URL
https://opencores.org/ocsvn/zap/zap/trunk
Subversion Repositories zap
Compare Revisions
- This comparison shows the changes necessary to convert path
/zap
- from Rev 40 to Rev 41
- ↔ Reverse comparison
Rev 40 → Rev 41
/trunk/src/doc/makefile
1,3 → 1,26
// --------------------------------------------------------------------------- |
// -- -- |
// -- (C) 2016-2018 Revanth Kamaraj. -- |
// -- -- |
// -- ------------------------------------------------------------------------ |
// -- -- |
// -- This program is free software; you can redistribute it and/or -- |
// -- modify it under the terms of the GNU General Public License -- |
// -- as published by the Free Software Foundation; either version 2 -- |
// -- of the License, or (at your option) any later version. -- |
// -- -- |
// -- This program is distributed in the hope that it will be useful, -- |
// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
// -- GNU General Public License for more details. -- |
// -- -- |
// -- You should have received a copy of the GNU General Public License -- |
// -- along with this program; if not, write to the Free Software -- |
// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
// -- 02110-1301, USA. -- |
// -- -- |
// --------------------------------------------------------------------------- |
|
.DEFAULT_GOAL=view |
|
view: ../../doc/ZAP_PROCESSOR_CORE_DATASHEET.pdf |
/trunk/src/doc/zap_ug.tex
1,3 → 1,28
% --------------------------------------------------------------------------- |
% -- -- |
% -- (C) 2016-2018 Revanth Kamaraj. -- |
% -- -- |
% -- ------------------------------------------------------------------------ |
% -- -- |
% -- This program is free software; you can redistribute it and/or -- |
% -- modify it under the terms of the GNU General Public License -- |
% -- as published by the Free Software Foundation; either version 2 -- |
% -- of the License, or (at your option) any later version. -- |
% -- -- |
% -- This program is distributed in the hope that it will be useful, -- |
% -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
% -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
% -- GNU General Public License for more details. -- |
% -- -- |
% -- You should have received a copy of the GNU General Public License -- |
% -- along with this program; if not, write to the Free Software -- |
% -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
% -- 02110-1301, USA. -- |
% -- -- |
% --------------------------------------------------------------------------- |
|
|
|
\documentclass[10pt]{article} |
\usepackage{graphicx} |
\usepackage{tabularx} |
/trunk/src/rtl/cpu/zap_issue_main.v
1,15 → 1,25
// ---------------------------------------------------------------------------- |
// The ZAP Project |
// (C)2016-2017, Revanth Kamaraj. |
// ---------------------------------------------------------------------------- |
// Filename : zap_issue_main.v |
// HDL : Verilog-2001 |
// Module : zap_issue |
// Author : Revanth Kamaraj |
// License : GPL v2 |
// ---------------------------------------------------------------------------- |
// ABSTRACT |
// -------- |
// --------------------------------------------------------------------------- |
// -- -- |
// -- (C) 2016-2018 Revanth Kamaraj. -- |
// -- -- |
// -- ------------------------------------------------------------------------ |
// -- -- |
// -- This program is free software; you can redistribute it and/or -- |
// -- modify it under the terms of the GNU General Public License -- |
// -- as published by the Free Software Foundation; either version 2 -- |
// -- of the License, or (at your option) any later version. -- |
// -- -- |
// -- This program is distributed in the hope that it will be useful, -- |
// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
// -- GNU General Public License for more details. -- |
// -- -- |
// -- You should have received a copy of the GNU General Public License -- |
// -- along with this program; if not, write to the Free Software -- |
// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
// -- 02110-1301, USA. -- |
// -- -- |
// --------------------------------------------------------------------------- |
// This stage converts register indices into actual values. Register indices |
// are also pumped forward to allow resolution in the shift stage. PC |
// references must be resolved here since the value gives PC + 8. Instructions |
18,12 → 28,6
// stage just like shifts. That's to ensure incorrect registers are not |
// read. |
// ---------------------------------------------------------------------------- |
// INFORMATION |
// ------------ |
// Reset method : Synchronous active high reset |
// Clock : Core clock |
// Depends : -- |
// ---------------------------------------------------------------------------- |
|
`default_nettype none |
|
/trunk/src/rtl/cpu/zap_predecode_coproc.v
1,28 → 1,31
// ---------------------------------------------------------------------------- |
// The ZAP Project |
// (C)2016-2017, Revanth Kamaraj. |
// ---------------------------------------------------------------------------- |
// Filename : zap_predecode_coproc.v |
// HDL : Verilog-2001 |
// Module : zap_predecode_coproc |
// Author : Revanth Kamaraj |
// License : GPL v2 |
// ---------------------------------------------------------------------------- |
// ABSTRACT |
// -------- |
// --------------------------------------------------------------------------- |
// -- -- |
// -- (C) 2016-2018 Revanth Kamaraj. -- |
// -- -- |
// -- ------------------------------------------------------------------------ |
// -- -- |
// -- This program is free software; you can redistribute it and/or -- |
// -- modify it under the terms of the GNU General Public License -- |
// -- as published by the Free Software Foundation; either version 2 -- |
// -- of the License, or (at your option) any later version. -- |
// -- -- |
// -- This program is distributed in the hope that it will be useful, -- |
// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
// -- GNU General Public License for more details. -- |
// -- -- |
// -- You should have received a copy of the GNU General Public License -- |
// -- along with this program; if not, write to the Free Software -- |
// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
// -- 02110-1301, USA. -- |
// -- -- |
// --------------------------------------------------------------------------- |
// Implements a simple coprocessor interface for the ZAP core. The interface |
// is low bandwidth and thus is suited only for coprocessor that do not |
// perform large data exchanges. Note that the translate function must be |
// present in the coprocessor to account for CPU modes. |
// ---------------------------------------------------------------------------- |
// INFORMATION |
// ------------ |
// Reset method : Synchronous active high reset |
// Clock : Core clock |
// Depends : -- |
// ---------------------------------------------------------------------------- |
|
|
`default_nettype none |
module zap_predecode_coproc #( |
parameter PHY_REGS = 46 |
/trunk/src/scripts/Config.cfg_template
1,3 → 1,27
#// ----------------------------------------------------------------------------- |
#// -- -- |
#// -- (C) 2016-2018 Revanth Kamaraj. -- |
#// -- -- |
#// -- -------------------------------------------------------------------------- |
#// -- -- |
#// -- This program is free software; you can redistribute it and/or -- |
#// -- modify it under the terms of the GNU General Public License -- |
#// -- as published by the Free Software Foundation; either version 2 -- |
#// -- of the License, or (at your option) any later version. -- |
#// -- -- |
#// -- This program is distributed in the hope that it will be useful, -- |
#// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
#// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
#// -- GNU General Public License for more details. -- |
#// -- -- |
#// -- You should have received a copy of the GNU General Public License -- |
#// -- along with this program; if not, write to the Free Software -- |
#// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
#// -- 02110-1301, USA. -- |
#// -- -- |
#// ----------------------------------------------------------------------------- |
|
|
# Basic template for use in other TCs. |
|
%Config = ( |
/trunk/src/scripts/bin2vlog.pl
1,5 → 1,28
#!/usr/bin/perl -w |
|
#// ----------------------------------------------------------------------------- |
#// -- -- |
#// -- (C) 2016-2018 Revanth Kamaraj. -- |
#// -- -- |
#// -- -------------------------------------------------------------------------- |
#// -- -- |
#// -- This program is free software; you can redistribute it and/or -- |
#// -- modify it under the terms of the GNU General Public License -- |
#// -- as published by the Free Software Foundation; either version 2 -- |
#// -- of the License, or (at your option) any later version. -- |
#// -- -- |
#// -- This program is distributed in the hope that it will be useful, -- |
#// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
#// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
#// -- GNU General Public License for more details. -- |
#// -- -- |
#// -- You should have received a copy of the GNU General Public License -- |
#// -- along with this program; if not, write to the Free Software -- |
#// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
#// -- 02110-1301, USA. -- |
#// -- -- |
#// ----------------------------------------------------------------------------- |
|
############################################################################### |
# Perl script to translate GCC generated binary files into Verilog memory |
# files. |
/trunk/src/scripts/check_arc.sh
1,6 → 1,30
#!/bin/bash |
# Used to check CPU architecture. |
# Used to check CPU architecture. Does not check for libc6. You must ensure it is installed. |
|
#// ----------------------------------------------------------------------------- |
#// -- -- |
#// -- (C) 2016-2018 Revanth Kamaraj. -- |
#// -- -- |
#// -- -------------------------------------------------------------------------- |
#// -- -- |
#// -- This program is free software; you can redistribute it and/or -- |
#// -- modify it under the terms of the GNU General Public License -- |
#// -- as published by the Free Software Foundation; either version 2 -- |
#// -- of the License, or (at your option) any later version. -- |
#// -- -- |
#// -- This program is distributed in the hope that it will be useful, -- |
#// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
#// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
#// -- GNU General Public License for more details. -- |
#// -- -- |
#// -- You should have received a copy of the GNU General Public License -- |
#// -- along with this program; if not, write to the Free Software -- |
#// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
#// -- 02110-1301, USA. -- |
#// -- -- |
#// ----------------------------------------------------------------------------- |
|
|
dpkg --print-architecture | grep amd64 |
|
if [ $? -eq 0 ]; |
/trunk/src/scripts/makefile
1,10 → 1,28
#// ----------------------------------------------------------------------------- |
#// -- -- |
#// -- (C) 2016-2018 Revanth Kamaraj. -- |
#// -- -- |
#// -- -------------------------------------------------------------------------- |
#// -- -- |
#// -- This program is free software; you can redistribute it and/or -- |
#// -- modify it under the terms of the GNU General Public License -- |
#// -- as published by the Free Software Foundation; either version 2 -- |
#// -- of the License, or (at your option) any later version. -- |
#// -- -- |
#// -- This program is distributed in the hope that it will be useful, -- |
#// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
#// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
#// -- GNU General Public License for more details. -- |
#// -- -- |
#// -- You should have received a copy of the GNU General Public License -- |
#// -- along with this program; if not, write to the Free Software -- |
#// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
#// -- 02110-1301, USA. -- |
#// -- -- |
#// ----------------------------------------------------------------------------- |
|
################################################## |
# # |
# THE ZAP PROJECT # |
# Released under the GNU GPL v2 # |
# # |
################################################## |
# # |
# This is a common makefile to be used for all # |
# testcases. Note that all paths are relative # |
# to the testcase directory. Do a make c2asm # |
/trunk/src/scripts/run_sim.pl
1,5 → 1,29
#!/usr/bin/perl -w |
|
#// ----------------------------------------------------------------------------- |
#// -- -- |
#// -- (C) 2016-2018 Revanth Kamaraj. -- |
#// -- -- |
#// -- -------------------------------------------------------------------------- |
#// -- -- |
#// -- This program is free software; you can redistribute it and/or -- |
#// -- modify it under the terms of the GNU General Public License -- |
#// -- as published by the Free Software Foundation; either version 2 -- |
#// -- of the License, or (at your option) any later version. -- |
#// -- -- |
#// -- This program is distributed in the hope that it will be useful, -- |
#// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
#// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
#// -- GNU General Public License for more details. -- |
#// -- -- |
#// -- You should have received a copy of the GNU General Public License -- |
#// -- along with this program; if not, write to the Free Software -- |
#// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
#// -- 02110-1301, USA. -- |
#// -- -- |
#// ----------------------------------------------------------------------------- |
|
|
my $HELP = " |
############################################################################### |
|
/trunk/src/testbench/cpu/timer/timer.v
1,5 → 1,29
`default_nettype none |
|
// ----------------------------------------------------------------------------- |
// -- -- |
// -- (C) 2016-2018 Revanth Kamaraj. -- |
// -- -- |
// -- -------------------------------------------------------------------------- |
// -- -- |
// -- This program is free software; you can redistribute it and/or -- |
// -- modify it under the terms of the GNU General Public License -- |
// -- as published by the Free Software Foundation; either version 2 -- |
// -- of the License, or (at your option) any later version. -- |
// -- -- |
// -- This program is distributed in the hope that it will be useful, -- |
// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
// -- GNU General Public License for more details. -- |
// -- -- |
// -- You should have received a copy of the GNU General Public License -- |
// -- along with this program; if not, write to the Free Software -- |
// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
// -- 02110-1301, USA. -- |
// -- -- |
// ----------------------------------------------------------------------------- |
|
|
// |
// A testbench model of a wishbone timer peripheral. |
// |
/trunk/src/testbench/cpu/vic/vic.v
1,5 → 1,29
`default_nettype none |
|
|
// ----------------------------------------------------------------------------- |
// -- -- |
// -- (C) 2016-2018 Revanth Kamaraj. -- |
// -- -- |
// -- -------------------------------------------------------------------------- |
// -- -- |
// -- This program is free software; you can redistribute it and/or -- |
// -- modify it under the terms of the GNU General Public License -- |
// -- as published by the Free Software Foundation; either version 2 -- |
// -- of the License, or (at your option) any later version. -- |
// -- -- |
// -- This program is distributed in the hope that it will be useful, -- |
// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
// -- GNU General Public License for more details. -- |
// -- -- |
// -- You should have received a copy of the GNU General Public License -- |
// -- along with this program; if not, write to the Free Software -- |
// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
// -- 02110-1301, USA. -- |
// -- -- |
// ----------------------------------------------------------------------------- |
|
// |
// Testbench VIC model. |
// |
/trunk/src/testbench/cpu/zap_ram_tb.v
1,3 → 1,26
// ----------------------------------------------------------------------------- |
// -- -- |
// -- (C) 2016-2018 Revanth Kamaraj. -- |
// -- -- |
// -- -------------------------------------------------------------------------- |
// -- -- |
// -- This program is free software; you can redistribute it and/or -- |
// -- modify it under the terms of the GNU General Public License -- |
// -- as published by the Free Software Foundation; either version 2 -- |
// -- of the License, or (at your option) any later version. -- |
// -- -- |
// -- This program is distributed in the hope that it will be useful, -- |
// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
// -- GNU General Public License for more details. -- |
// -- -- |
// -- You should have received a copy of the GNU General Public License -- |
// -- along with this program; if not, write to the Free Software -- |
// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
// -- 02110-1301, USA. -- |
// -- -- |
// ----------------------------------------------------------------------------- |
|
`include "zap_defines.vh" |
|
// |
/trunk/src/testbench/cpu/zap_tb.v
1,3 → 1,27
// ----------------------------------------------------------------------------- |
// -- -- |
// -- (C) 2016-2018 Revanth Kamaraj. -- |
// -- -- |
// -- -------------------------------------------------------------------------- |
// -- -- |
// -- This program is free software; you can redistribute it and/or -- |
// -- modify it under the terms of the GNU General Public License -- |
// -- as published by the Free Software Foundation; either version 2 -- |
// -- of the License, or (at your option) any later version. -- |
// -- -- |
// -- This program is distributed in the hope that it will be useful, -- |
// -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- |
// -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- |
// -- GNU General Public License for more details. -- |
// -- -- |
// -- You should have received a copy of the GNU General Public License -- |
// -- along with this program; if not, write to the Free Software -- |
// -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -- |
// -- 02110-1301, USA. -- |
// -- -- |
// ----------------------------------------------------------------------------- |
|
|
`default_nettype none |
`include "zap_defines.vh" |
|