| 1 |
8 |
gdevic |
A-Z80
|
| 2 |
|
|
A conceptual implementation of the Z80 CPU
|
| 3 |
|
|
------------------------------------------
|
| 4 |
17 |
gdevic |
for Altera, Xilinx and Lattice FPGAs
|
| 5 |
3 |
gdevic |
|
| 6 |
17 |
gdevic |
This project is described in more details at www.baltazarstudios.com
|
| 7 |
3 |
gdevic |
|
| 8 |
18 |
gdevic |
For additional information, read 'Quick Start' and 'Users Guide' documents
|
| 9 |
|
|
in the 'docs' folder. Also read a 'readme.txt' file in each of the folders.
|
| 10 |
|
|
|
| 11 |
|
|
Prerequisites
|
| 12 |
|
|
=============
|
| 13 |
8 |
gdevic |
* Altera Quartus and Modelsim (free web editions) OR
|
| 14 |
17 |
gdevic |
* Xilinx ISE (free Webpack edition) OR
|
| 15 |
|
|
* Lattice ICECube toolchain from Synopsis (Lattice tested by JuanS)
|
| 16 |
8 |
gdevic |
* Python 3.5.x
|
| 17 |
3 |
gdevic |
|
| 18 |
18 |
gdevic |
Description of Folders
|
| 19 |
|
|
======================
|
| 20 |
17 |
gdevic |
"cpu" folder contains A-Z80 CPU functional blocks and top-level modules:
|
| 21 |
3 |
gdevic |
alu contains ALU block, ALU control and flags logic
|
| 22 |
|
|
bus contains data bus switches, pin logic, address latch and the
|
| 23 |
|
|
address incrementer
|
| 24 |
18 |
gdevic |
control contains PLA decoder, the sequencer and other control blocks
|
| 25 |
17 |
gdevic |
registers contains CPU register file and the register control logic
|
| 26 |
|
|
toplevel A-Z80 top level core, interfaces and test code
|
| 27 |
3 |
gdevic |
|
| 28 |
18 |
gdevic |
IMPORTANT:
|
| 29 |
|
|
If you want to use A-Z80 in your own project, run "export.py" script which
|
| 30 |
|
|
will copy only files that are needed (so, don't copy everything yourself).
|
| 31 |
3 |
gdevic |
|
| 32 |
17 |
gdevic |
"host" folder integrates the A-Z80 CPU into several fully functional designs:
|
| 33 |
|
|
"basic_de1" contains a simplified board consisting of A-Z80 CPU, memory
|
| 34 |
|
|
and UART modules that can run small Z80 programs on Altera DE1
|
| 35 |
|
|
"basic_nexys3" contains the same example project but for Xilinx Nexys3 board
|
| 36 |
|
|
"zxspectrum_de1" contains an implementation of the Sinclair ZX Spectrum
|
| 37 |
|
|
for Altera DE1 board
|
| 38 |
3 |
gdevic |
|
| 39 |
18 |
gdevic |
"tools", "resources" contain various tools related to the project; reverse
|
| 40 |
|
|
engineering Z80, design verification and testing.
|
| 41 |
3 |
gdevic |
|
| 42 |
18 |
gdevic |
Email me if you have any questions, issues or you want to use A-Z80 or any of
|
| 43 |
|
|
the files herein; I'd like to hear from you,
|
| 44 |
17 |
gdevic |
|
| 45 |
3 |
gdevic |
Goran Devic
|
| 46 |
|
|
gdevic@yahoo.com
|
| 47 |
|
|
|
| 48 |
|
|
----------------------------------------------------------------------------------
|
| 49 |
18 |
gdevic |
This project and each file therein is covered under the GNU GPL2.0 license.
|
| 50 |
3 |
gdevic |
It basically states that anyone is free to use it and distribute it, but the full
|
| 51 |
18 |
gdevic |
source needs to be available under the same terms.
|