2010年7月19日 星期一
System Bus Bridge Emulator @ SystemC
Hi all,
How to communicate each different clock domain IPs with bus architecture?
i think bridge is a good answer for you, what's "Bridge" and what's the benefits? you can check it from ARM (AHB 2 APB BUS Bridge) or X86 (PCI 2 PCI BUS Bridge)...,that can help you to known why we use it and how it work...
Ref:
AHB to APB Bridge (AHB2APB)
In here,we model the system bus bridge emulator @SystemC code,beware it only support High Speed bus 2 Low Speed bus, if you want the both sides supported, you can rewrite it in Low 2 High Case and reconstructed it again.In this "IP", we support some features below.
features
1. Read/Write Buffers(FIFO)
In FIFO design, it can save the transaction wait for bus requirement, and get the high utility with it.
2. Parallel tasks for High/Low Speed Bus transaction
In Master/Slave had it's own state machine, and each communication would handle by Latch Design.
Ref:
3. Read back preloaded
In the Read/Write transaction you would find the Read transaction is a critical case, why ?...
Because the data wouldn't been exist ready in Bridge, so we should ask again to get d it from another side's Slaves, and keep it in our Bridge Buffer until the New Read Request is hit.
4. write through
it like a Cache design, it can store the common used data and map the whole
Slaves directly, so it can save the request times and increase the
bus performance.
Ref: Cycle Chart
http://spreadsheets.google.com/pub?key=0An5jh2lwIpeKdE9nQnJCME1UdnNicl9oYTJZNHpVN3c&hl=en&output=html
source code download here.
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言