Next: FPGA-Steuerung durch den MPC860
Up: Auslesen der Bilddaten aus
Previous: Auslesen der Bilddaten aus
Erweiterung des Verilog-Programms
Um die Signale des Memory-Controllers für den Datentransport vom SRAM in den
DRAM-Hauptspeicher des MBX-Boards zu verwenden, wird das FPGA folgendermaßen
programmiert:
- Bei einem Lesezugriff des Memory-Controllers auf eine Adresse im
Adressbereich des SRAM-Speichers wird das FPGA ,,unsichtbar``. Steuer,
Adress- und Datenleitungen des SRAMs werden auf die entsprechenden, vom Memory-
Controller generierten, Signale durchgeschaltet.
- Bei einem Schreibzugriff des Memory-Controllers wird unabhängig von der
anliegenden Adresse ein 32-Bit Register im FPGA beschrieben.
- Bei einem Lesezugriff des Memory-Controllers auf eine Adresse außerhalb
des Adressbereichs des SRAM-Speichers wird auf den Datenleitungen der Inhalt des
32-Bit-Registers zurückgegeben.
Die Aktionen des FPGAs werden durch den Wert des 32-Bit-Registers gesteuert.
Durch den Inhalt dieses Registers wird dem FPGA mitgeteilt, ob es auf den SRAM-Speicher zugreifen und welche Speicherbank es zur Speicherung der Bilddaten
verwenden darf.
Tabelle 3.2:
Der Aufbau des 32-Bit-Registers
| Bits |
31 bis 16 |
15 bis 8 |
| Funktion |
Reserviert |
PREROW |
| Reset |
0 |
0 |
| R/W |
R |
W |
| |
| Bits |
7 bis 6 |
5 |
4 |
3 |
2 |
1 |
0 |
| Funktion |
Reserviert |
PICRDY |
RWPIC |
Reserviert |
WPIC |
CHOBNK |
CMPCBNK |
| Reset |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
| R/W |
R |
R |
R |
R |
R/W |
R/W |
R/W |
Der Aufbau des 32-Bit-Registers ist in Tabelle 3.2 zu sehen. Die verwendeten Kürzel werden im Folgenden beschrieben:
- PREROW (Previously Read Rows)
8-Bit Integer = Die Zeit (in Anzahl der zuvor ausgelesenen Zeilen), die zur Integration jedes Pixels verwendet wird (siehe Studienarbeit [40], S. 53, Abschnitt 3.4.0.1). PREROW wird verwendet, um die Helligkeit des Kamerabildes zu steuern.
- PICRDY (Picture Ready)
1 = Zeigt an, dass ein fertiges Bild der Kamera im SRAM-Speicher liegt.
0 = Kein Bild im Speicher.
- RWPIC (Received Write Picture)
1 = Das FPGA hat die Aufforderung erkannt, ein Bild in das SRAM zu schreiben.
0 = Anforderung wurde noch nicht erkannt.
- WPIC (Write Picture)
1 = Anforderung des MPC860 an das FPGA, ein Bild in den SRAM-Speicher zu
schreiben.
0 = PICRDY und RWPIC werden auf 0 gesetzt. Die Adress- und Steuerleitungen des
MPC860 sind mit beiden SRAM-Bausteinen verbunden.
(MPC
SRAM 1 und SRAM 2)
- CHOBNK (Choose Bank)
1 = Die Adress-, Daten und Steuerleitungen von Speicherbank 1 sind mit den
Adress-, Daten- und Steuerleitungen des FPGA verbunden. Die Adress- und
Steuerleitung des MPC860 sind mit Speicherbank 2 verbunden.
(FPGA
SRAM 1, MPC
SRAM 2)
0 = Die Adress-, Daten- und Steuerleitungen von Speicherbank 2 sind mit den
Adress-, Daten- und Steuerleitungen des FPGA verbunden. Die Adress- und
Steuerleitung des MPC860 sind mit Speicherbank 1 verbunden.
(FPGA
SRAM 2, MPC
SRAM 1)
- CMPCBNK (Change MPC860 Bank)
1 = Die Datenleitungen des MPC860 sind beim Lesezugriff mit
Speicherbank 1 verbunden.
(MPC
SRAM 1)
0 = Die Datenleitungen des MPC860 sind beim Lesezugriff mit
Speicherbank 2 verbunden.
(MPC
SRAM 2)
Das Verilog-Modul ,,cam4mbx.v``
ist auf der CD im Anhang A im Verzeichnis ,,Verilog`` zu finden. Mit Hilfe dieses Moduls werden die Logikbausteine im FPGA so
programmiert, dass sie obige Funktionalität erfüllen. Es ist eine erweiterte
Version des Moduls ,,cam4mbx.v``, welches in der Studienarbeit erstellt
wurde.
Next: FPGA-Steuerung durch den MPC860
Up: Auslesen der Bilddaten aus
Previous: Auslesen der Bilddaten aus
Thorsten Thormaehlen
2000-03-27