ztachip by vuongdnguyen

Hardware/software framework to build Domain-Specific-Architecture for vision-AI

Introduction

ztachip is an opensource framework for Domain Specific Architecture.

Domain Specific Architecture defines the hardware/software architectures that can accelerate a particular class of applications very efficiently. The class of applications that ztachip accelerates today are AI and vision processing tasks.

ztachip has the full hardware implementation available in VHDL source code.

ztachip hardware can be deployed to FPGA hardware or custom ASIC.

ztachip is fully software programmable by using a special tensor programming paradigm.

Unlike many other AI hardware architectures, ztachip is flexible enough to run not just neural-network functions, but also a wide range of image processing such as image resizing, edge detection, image blurring, optical flow, harris corner feature extraction,...

Latest results based on SSD-MobiNet AI inference performance show ztachip to be 5.5x more computational efficient than Nvidia's Jetson Nano and 37x more computational efficient than Google's TPU edge. Click here for detailed performance analysis.

This is a great YouTube video about why the future of computing is Domain Specific Architecture. Stanford Seminar - New Golden Age for Computer Architecture presented by John Hennessy, 2017 Turing Award Recipient / Chairman, Alphabet

To follow latest update/news of this project, please follow us on Twitter

Demonstration

Run objectDetection,edgeDetection,motionDetection and featureOfInterest extraction together at same time.

ObjectDetect+EdgeDetection+OpticalFlow+Harris

Run image classfication using MobiNetv2.0 from Google TensorFlowLite (no retraining required)

Classifier

Run Edge detection

Edge detection

Run HarrisCorner feature of interest extraction

HarrisCorner

This demonstration runs on DE10_NANO FPGA board

FPGA board

Getting started

Ztachip Build Procedure

Ztachip Architecture - How it works

Programmers Guide - How to program ztachip

Hardware Simulation Guide - How to simulate ztachip

AI stack - How to build AI applications with ztachip

Vision stack - How to build embedded vision applications with ztachip

Conclusions

I created this project as a community project for us to experiment on some research idea in the area of Domain Specific Architecture.

So how ztachip measured up against other solutions?

Results up to now look very promising. Click here for result analysis.

Please send me your feedback comments and ideas. Much appreciated.

Copyright and license

Copyright: Vuong Nguyen (vuongdnguyen@hotmail.com) For licensing details please visit LICENSE.md

MIT License

Copyright (c) 2020 ztachip

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Project Meta

  • Registered on LibreCores 9 months ago
  • Project started 1 year ago
  • Last commit 9 months ago

Commits

{"labels":[2020,2021],"series":[[72,5]]}

Commits per year

Contributors

{"labels":[2020,2021],"series":[[1,1]]}

Unique contributors per year

Releases

Data not available

Languages

{"labels":["Others","C\/C++ Header","VHDL","C++","Markdown","Verilog-SystemVerilog","make","Objective C","Pascal","Tcl\/Tk","Bourne Shell"],"series":[13,67,63,48,14,14,13,11,11,8,8]}

Share of languages used

Data Sheet
https://github.com/ztachip/ztachip
Last activity 9 months ago
Primary language: C/C++ Header
77 commits by 1 contributor
Vuong Nguyen
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,1,6,8,3,4,10,13,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

activity over the last year

LibreCores data updated 9 months ago