OpenCores
URL https://opencores.org/ocsvn/z80soc/z80soc/trunk

Subversion Repositories z80soc

[/] [z80soc/] [trunk/] [V0.7/] [doc/] [README-DE1.txt] - Blame information for rev 34

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 34 rrred
Z80 Computer on DE1 Development board
2
 
3
Arquitecture
4
------------
5
 
6
SW9     - Reserved - Reset
7
SW8     - Reserved
8
LEDR9   - Reserved
9
LEDR8   - Reserved
10
 
11
Memory
12
------
13
0000H - 3FFFH - ROM
14
4000H - 4C7FH - VIDEO RAM
15
4C80H - 547FH - Characters definition RAM
16
5480h - 5FFFH - Not Used
17
6000H - BFFFH - RAM memory
18
 
19
Registers
20
---------
21
7FDDH         - Z80SOC VERSION  (0 = DE1, 1 = S3E)
22
 
23
IO (Ports)
24
----------
25
 
26
01H     - Out   - Green Leds (7-0)
27
02H     - Out   - Red Leds (7-0)
28
 
29
10H     - Out   - HEX3 - HEX2
30
11H     - Out   - HEX1 - HEX0
31
20H     - In    - SW(7-0)
32
30H     - In    - KEY(3-0)
33
80H     - In    - PS/2 keyboard
34
90H     - Out   - Video
35
91H     - InOut - Video cursor X
36
92H     - InOut - Video cursor Y
37
 
38
GPIO Expansion pins
39
-------------------
40
All write operations to GPIO are buffered.
41
To write the buffered signals to the pins, the Z80 must
42
write any value to port C0 (GPIO0) or C1 (GPIO1)
43
 
44
A0      - GPIO0 (7-0)
45
A1      - GPIO0 (15-8)
46
A2      - GPIO0 (23-16)
47
A3      - GPIO0 (31-24)
48
A4      - GPIO0 (35-32)
49
 
50
B0      - GPIO1 (7-0)
51
B1      - GPIO1 (15-8)
52
B2      - GPIO1 (23-16)
53
B3      - GPIO1 (31-24)
54
B4      - GPIO1 (35-32)
55
 
56
C0      - GPIO0 Write
57
C1      - GPIO1 Write
58
 
59
 
60
--
61
 
62
Reference Sample ROM
63
 
64
It is provided a ROM with a reference application, and the correspnding
65
Z80 source codes.
66
 
67
To use the application you will need to connect the DE1 board to a
68
VGA monitor and PS/2 keyboard.
69
 
70
The program will show how to use:
71
        Input push buttons
72
        Input Switches
73
        PS/2 keyboard
74
        Video text out (memory mapped and port mapped io)
75
        Leds
76
        7seg display
77
        Redefinition of characters
78
 
79
The program starts waiting for keys to be typed in the keyboard.
80
The characters are shown on the 40x30 video (VGA).
81
If "A" is pressed, then the program starts another routine,
82
that will write bytes into SRAM. After 255 bytes are written,
83
the bytes are read sequencially.
84
The address read are displayed in the seven seg display, and
85
the byte read displayed in the leds (binary format).
86
When finished, waits for KEY0 (DE1 board) and then restart again.
87
 
88
The switches (7-0) are used as input to calculate delays. Try
89
changing these switches to speed up ou slow down the leds. It only
90
takes effect after a Z80 reset.
91
To reset the Z80, use SW9.
92
 
93
The looping text inside the box demonstrates how to access the video ram.
94
To change speed of scrolling, use the switches (SW).
95
 
96
To modify the screen layout (rows x columns), edit the file z80soc_pack.vhd and find the constants:
97
- vid_cols  = number of columns (maximum is 80)
98
- vid_lines = number of lines (maximum is 40)
99
- pixelsxchar = 1 every character will be plotted using 8x8 pixels
100
- pixelsxchar = 2 every character will be plotter using 16x16 pixels
101
 
102
The column x lines total must not be over 3200, because this is the capacity defined for the video ram.
103
The characters can be redefined. Every character must have 8 bytes (8 x 8 bits).
104
 
105
Hope you enjoy.
106
 
107
TO-DO:
108
----
109
 
110
- (done)80x40 Video display
111
- Serial communication
112
- Monitor program to allow download of programs by serial communication
113
- Mass storage device (SD/MMC)
114
- Video colors

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.