2009年7月16日 星期四

ESL裡的SoC轉運站

一顆SoC裡可能會有一顆到多顆CPUs, 還有周邊, 記憶體,...,等什麼的. 靠什麼來把資料在這中間搬來搬去呢? 太特殊的東西不談, 大概就是屬Bus以及NoC (Network on Chip). OpenESL比不上CoWare的有幾點, 但是最主要的就是我們缺乏一些IP的ESL Models. 其中又以Bus與CPU為最重要.

CPU方面, Aaa的32-bit RISC拿來做研究可以, 但是想必沒人真正會拿來用在產品上, 所以品皓的8051與DSP16(實際上是AD2191的clone)會是我們的主角, 至於32-bit RISC就要靠電機系陳中和老師的研究了.

Bus方面, Gary按照TLM2.0做了一版堪用的Bus, 不過這不太切合實際, 同樣也是拿來做研究而已. 我們需要的是標準的Bus models. 所以ruru的重點是:

1. OCP

2. AMBA2 or even AMBA3

這是短時間我們要弄出來的. 再加上一些週邊介面所常用的Model如I2C, 以及利用PC的resources來做simulation的呈現也是方便在simulation時可以watch結果的好工具.

ruru的工作的定義很簡單, spec都在標準裡, 請加油!

沒有留言: