Hi Sen,
herzlich willkommen bei der ReconOS Mailingliste :)
Da die Frage nach speziellen Boards oder FPGAs in letzter Zeit immer
wieder auftaucht, möchte ich einmal allgemein darüber informieren,
ReconOS auf bisher nicht unterstützter Hardware einzurichten.
Generell sollten folgende Voraussetzungen gegeben sein:
- Ein Xilinx FPGA und die dazugehörigen Lizenzen ist obligatorisch
- Ein dedizierter RAM ist empfehlenswert, da der on-chip RAM
lediglich sehr begrenzt ist
Um nun ReconOS für solch ein Board einzurichten, muss lediglich ein
entsprechendes Referenzdesign angelegt werden. Dieses beinhaltet
alle Boardspezifischen Komponenten und stellt die Basis für das
später generierte Design. Als ersten Schritt solltest Du ein
funktionierendes SoC bauen, welches ein entsprechendes
Betriebssystem (momentan XIlkernel oder Linux) bootet und z.B. ein
einfaches Hello World Programm ausführt. Dieser Schritt ist zunächst
völlig unabhängig von ReconOS. In einem zweiten Schritt kann dieses
Beispieldesign dann in ein Referenzdesign umgewandelt werden.
Für dein spezielles Board würde ich empfehlen den Virtex FPGA zu
nutzen, da dieser über ausreichend Ressourcen verfügt und zusätzlich
Zugriff auf den off-chip RAM hat. ReconOS ist zunächst nicht dafür
ausgelegt mehrere FPGAs zu integrieren und ich weiß auch nicht,
welches Interface zwischen den beiden besteht. Eventuell kannst Du
noch eigene Logik einbauen um eine Kommunikation zu ermöglichen. Da
das Board über weder LAN noch externe Speichermedien verfügt, musst
Du sämtliche benötigte Daten zunächst via JTAG in den Hauptspeicher
laden. Die Verbindung zum PC kannst Du dann entweder versuchen über
den USB-Port herzustellen oder einfach ein UART über JTAG nutzen.
Letzteres ist wahrscheinlich einfacher, da der USB-Port lediglich
vom Spartan aus zugegriffen werden kann.
Wenn Du weiterhin Interesse daran hast, können wir auch gerne einmal
persönlich darüber sprechen, falls Du noch an der Uni bist. Wenn Du
noch weitere Fragen hast, zögere nicht einfach noch mal zu
schreiben.
Viele Grüße
Christoph
-- English Version --
Hi Sen,
welcome to the ReconOS mailing list :)
Since I encounter the question concerning new boards or FPGAs over
and over again, I want to give some general hints how to setup
ReconOS on a currently unsupported hardware. In general, there are
some requirements which should be satisfied:
- A Xilinx FPGA in combination with the appropriate licenses is
mandatory
- A dedicated RAM is advisable, since the on-chip RAM is rather
limited
To setup ReconOS on a new board you have to create a new reference
design, which includes all board specific settings and forms the
basis for the generated designs. As a first step, you should build
an example design which boots a supported operating system
(Xilkernel or Linux) and executes, for example, a hello world
program. This step is completely independent from ReconOS. In a
second step you can convert this example design into a reference
design.
For your particular board I would suggest to use the Virtex FPGA,
since it provides sufficient number of resources and can access the
off-chip RAM. ReconOS itself is not ment to run on several FPGAs and
I do not know anything about the interface between the two FPGAs.
You might be able to introduce your own logic to utilize both of
them. Since the board provides neither LAN nor external memory
controllers, you have to load all needed data via JTAG to the RAM.
The connection to the PC can be realized via the USB port or
directly using UART via JTAG. The latter seems to be much easier,
since the USB port is only connected to the Spartan.
If you need any further assistance, you can come here to the
University or just write back.
Yours
Christoph