Zephyrnet-logo

Ztachip versnelt Tensorflow en afbeeldingsworkloads

Datum:

[Vuong Nguyen] kent duidelijk zijn weg in hardware voor kunstmatige intelligentie-accelerator, waardoor ztachip: een open source-implementatie van een acceleratorplatform voor AI en traditionele beeldverwerkingsworkloads. Ztachip (uitgesproken als "zeta-chip") bevat een reeks aangepaste processors en is niet gebonden aan één bepaalde architectuur. Ztachip implementeert een nieuw paradigma voor tensorprogrammering dat [Vuong] heeft gecreëerd, dat: wel versnel TensorFlow-taken, maar is daar niet toe beperkt. In feite kan het TensorFlow parallel met niet-AI-taken verwerken, zoals de onderstaande video laat zien.

Een RISC-V-kern, gebaseerd op het VexRiscV-ontwerp, wordt gebruikt als de hostprocessor die de distributie van de applicatie afhandelt. VexRiscV zelf is best interessant. Geschreven in SpinalHDL (een Scala-variant), is het super configureerbaar en produceert het een Verilog-kern, klaar om in het ontwerp te vallen.

beeldhttps://www.youtube.com/watch?v=amubm828YGs
” data-image-caption data-medium-file=”https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png?w=400″ data-large-file=”https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png?w=800″ loading=”lazy” class=”wp-image-552115 size-medium” src=”https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png?w=400″ alt width=”400″ height=”225″ srcset=”https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png 1920w, https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png?resize=250,141 250w, https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png?resize=400,225 400w, https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png?resize=800,450 800w, https://hackaday.com/wp-content/uploads/2022/09/Snap-2022-09-08-at-15.59.38.png?resize=1536,864 1536w” sizes=”(max-width: 400px) 100vw, 400px”>
Een Digilent Arty-A7, Arducam en een VGA PMOD is alles wat je nodig hebt

Vanuit een hardware-ontwerpperspectief haakt de RISC-V-kern aan op een AXI-dwarsbalk, met alle AXI-lite-bussen naast elkaar zoals gebruikelijk is voor de AMBA AXI-ecosysteem. De Ztachip-kern en een DDR3-controller zijn ook aangesloten, samen met een camera-interface en VGA-video.

Afgezien van het bieden van een FPGA-specifieke DDR3-controller en AXI crossbar IP, is de rest van het ontwerp generiek RTL. Dit is goed nieuws. De onderstaande demo wordt geïmplementeerd op een op Artix-7 gebaseerde Digilent (Arty-A7) met een VGA PMOD-module, maar verder weinig nodig. Pre-build Xilinx IP wordt geleverd, maar het richten op een andere FPGA zou geen enorme taak moeten zijn voor de ervaren FPGA-ninja.

beeldhttps://www.rocketboards.org/foswiki/Projects/ZtachipVisionAI
” data-image-caption data-medium-file=”https://hackaday.com/wp-content/uploads/2022/09/ztachip_hw_architecture.png?w=268″ data-large-file=”https:// hackaday.com/wp-content/uploads/2022/09/ztachip_hw_architecture.png?w=419″ loading=”lazy” class=”wp-image-552114 size-medium” src=”https://hackaday.com/ wp-content/uploads/2022/09/ztachip_hw_architecture.png?w=268″ alt width=”268″ height=”400″ srcset=”https://hackaday.com/wp-content/uploads/2022/09/ ztachip_hw_architecture.png 453w, https://hackaday.com/wp-content/uploads/2022/09/ztachip_hw_architecture.png?resize=168,250 168w, https://hackaday.com/wp-content/uploads/2022/09/ ztachip_hw_architecture.png?resize=268,400 268w, https://hackaday.com/wp-content/uploads/2022/09/ztachip_hw_architecture.png?resize=419,625 419w” maten=”(max-breedte: 268px) 100vw, 268px” >
Ztachip-architectuur op het hoogste niveau

De magie gebeurt in de Ztachip-kern, die meestal een reeks Pcores is. Elke Pcore heeft zowel vector- als scalaire verwerkingscapaciteit, waardoor het superflexibel is. De Tensor Engine (intern is dit de 'dataplane-processor') heeft hier de leiding en verzendt instructies van de RISC-V-kern naar de Pcore-array samen met beeldgegevens, evenals het streamen van videogegevens. Die camera is slechts een 0.3 MP Arducam en de video heeft een VGA-resolutie, maar geef hem een ​​grotere FPGA en die limieten kunnen worden verhoogd.

Deze domeinspecifieke benadering maakt gebruik van een sterk gewijzigde C-achtige taal (met een aangepaste compiler) om de applicatie te beschrijven die over de accelerator-array moet worden gedistribueerd. We konden hier geen documentatie over vinden, maar er zijn een paar voorbeeldalgoritmen.

De demovideo toont een realtime mix van vier parallel lopende algoritmen; één objectclassificatie (Tensorflow van Google mobielnet-ssd, een vooraf getraind AI-model) canny edge detectie, een Harris hoekdetectie, en optische stroom die het een roofdierachtig bewegingsbeeld geeft.

[Vuong] schat dat het qua efficiëntie 5.5x efficiënter is dan een Jetson Nano en 37x meer dan de TPU-edge van Google. Dit zijn op zijn zachtst gezegd gewaagde beweringen, maar wie zijn wij om ruzie te maken met een duidelijk ongelooflijk getalenteerde ingenieur?

We behandelen veel AI-gerelateerde onderwerpen, zoals deze AI-geassisteerd tik-typgadget, voor starters. En om de originele AI-hardware niet te vergeten, het goede ouderwetse neuron, dat hebben we ook geregeld!

[Ingesloten inhoud]

spot_img

Laatste intelligentie

spot_img