Detail publikace

Jak propojit Linux s FPGA?

KOŘENEK, J. KORČEK, P. VIKTORIN, J.

Originální název

Jak propojit Linux s FPGA?

Český název

Jak propojit Linux s FPGA?

Typ

redakční článek

Jazyk

cs

Originální abstrakt

Dnešní FPGA čipy poskytují stále větší kapacitu a možnosti. Narůstá množství konfigurovatelné logiky, na čipu je možné najít i relativně výkonná procesorová jádra. Vzniká tak možnost konstruovat komplexní systémy na čipu (SoC - System on Chip).  Problémem návrhu SoC systémů je relativně dlouhá doba vývoje, což může ohrozit splnění požadavků na uvedení nového produktu na trh. Dnešní vývojové nástroje se snaží zkrátit dobu vývoje syntézou algoritmů popsaných v jazyce C na hardwarové architektury s využitím vysokoúrovňové syntézy (HLS - High Level Synthesis). HLS umožňuje výrazně zkrátit dobu vývoje hardwarových bloků, ale neřeší problematiku rozdělení systému mezi hardware a software a komunikace mezi procesorem a FPGA logikou. V článku se proto zaměříme na možnosti propojení FPGA logiky s procesorem, na kterém běží operační systém Linux. Nejdříve bude věnována pozornost komunikaci Linuxu s PCIe akcelerační kartou.  Budou ukázány principy zajišťující vysokou propustnost a flexibilitu. Následně se zaměříme na FPGA Xilinx Zynq a Altera Cyclone V SoC, kde se soustředíme na zprovoznění OS Linux na ARM jádrech a následně i na samotnou komunikaci mezi Linuxem a FPGA logikou. V obou případech ukážeme, na jaké problémy je možné narazit a jakým způsobem je vhodné je řešit.

Český abstrakt

Dnešní FPGA čipy poskytují stále větší kapacitu a možnosti. Narůstá množství konfigurovatelné logiky, na čipu je možné najít i relativně výkonná procesorová jádra. Vzniká tak možnost konstruovat komplexní systémy na čipu (SoC - System on Chip).  Problémem návrhu SoC systémů je relativně dlouhá doba vývoje, což může ohrozit splnění požadavků na uvedení nového produktu na trh. Dnešní vývojové nástroje se snaží zkrátit dobu vývoje syntézou algoritmů popsaných v jazyce C na hardwarové architektury s využitím vysokoúrovňové syntézy (HLS - High Level Synthesis). HLS umožňuje výrazně zkrátit dobu vývoje hardwarových bloků, ale neřeší problematiku rozdělení systému mezi hardware a software a komunikace mezi procesorem a FPGA logikou. V článku se proto zaměříme na možnosti propojení FPGA logiky s procesorem, na kterém běží operační systém Linux. Nejdříve bude věnována pozornost komunikaci Linuxu s PCIe akcelerační kartou.  Budou ukázány principy zajišťující vysokou propustnost a flexibilitu. Následně se zaměříme na FPGA Xilinx Zynq a Altera Cyclone V SoC, kde se soustředíme na zprovoznění OS Linux na ARM jádrech a následně i na samotnou komunikaci mezi Linuxem a FPGA logikou. V obou případech ukážeme, na jaké problémy je možné narazit a jakým způsobem je vhodné je řešit.

Klíčová slova

FPGA, Linux, ovladače, propojení, propustnost, platforma

Vydáno

04.05.2014

Nakladatel

NEUVEDEN

Místo

NEUVEDEN

Strany od

24

Strany do

25

Strany počet

2

BibTex


@misc{BUT111564,
  author="Jan {Kořenek} and Pavol {Korček} and Jan {Viktorin}",
  title="Jak propojit Linux s FPGA?",
  annote="Dnešní FPGA čipy poskytují stále větší kapacitu a možnosti. Narůstá množství
konfigurovatelné logiky, na čipu je možné najít i relativně výkonná procesorová
jádra. Vzniká tak možnost konstruovat komplexní systémy na čipu (SoC - System on
Chip).  Problémem návrhu SoC systémů je relativně dlouhá doba vývoje, což může
ohrozit splnění požadavků na uvedení nového produktu na trh. Dnešní vývojové
nástroje se snaží zkrátit dobu vývoje syntézou algoritmů popsaných v jazyce C na
hardwarové architektury s využitím vysokoúrovňové syntézy (HLS - High Level
Synthesis). HLS umožňuje výrazně zkrátit dobu vývoje hardwarových bloků, ale
neřeší problematiku rozdělení systému mezi hardware a software a komunikace mezi
procesorem a FPGA logikou. V článku se proto zaměříme na možnosti propojení FPGA
logiky s procesorem, na kterém běží operační systém Linux. Nejdříve bude věnována
pozornost komunikaci Linuxu s PCIe akcelerační kartou.  Budou ukázány principy
zajišťující vysokou propustnost a flexibilitu. Následně se zaměříme na FPGA
Xilinx Zynq a Altera Cyclone V SoC, kde se soustředíme na zprovoznění OS Linux na
ARM jádrech a následně i na samotnou komunikaci mezi Linuxem a FPGA logikou.
V obou případech ukážeme, na jaké problémy je možné narazit a jakým způsobem je
vhodné je řešit.",
  address="NEUVEDEN",
  chapter="111564",
  edition="NEUVEDEN",
  howpublished="print",
  institution="NEUVEDEN",
  number="3",
  year="2014",
  month="may",
  pages="24--25",
  publisher="NEUVEDEN",
  type="editorial"
}