Re: 如何做設計驗證?
【 在 overboy.bbs@bbs.cis.nctu.edu.tw (少年的) 的大作中提到: 】
: 是不是一般做 FPGA prototyping 也只能 handle pure function
: 而沒有 Timing。它們似乎也可以驗證整個系統,它們是怎麼 handle
: timing?
FPGA 是只能驗證 function 沒錯啊,除非你的系統慢到用 FPGA 實現就可以了。
我覺得你可能要搞清楚,FPGA 的作用有分成兩個方面:
1. Hardware acceleration:
這是因為用電腦跑 Verilog/VHDL 模擬實在太慢了,因此用硬體的
方式加速模擬的速度。所以即使 FPGA 無法做到 real-time 模擬,
至少也會比跑電腦的 Verilog/VHDL 模擬快很多。
以多媒體硬體設計為例,就可以應用 FPGA 來解整張圖或是整張影片,
可以完整測完整個影片的解碼動作。如果用電腦模擬,可能會跑不完,
最多解個一兩張 frame 就很了不起了。(光這樣電腦就要跑 4hr 左右)
所以為了加速 FPGA 的速度,FPGA 除了靠製程改善速度外,
也提供一些較快速的 Arithmetic Unit 的選擇,讓 FPGA 實際可執行
的速度可以較接近 real timing,但是通常還是跟未來預計用 ASIC
下線時的速度差很遠。因此沒有人用 FPGA 來驗證電路速度的啦。
我前面已經講過了,要知道電路的最高速度就是看 STA report。
2. Protocal Verification:
這部分的作用,以往是結合已開發完成的 evulation board,讓由
FPGA 實現的系統核心部分與周邊介面溝通,或與上層 MAC 或 CPU
溝通,測試周邊與 FPGA 實現的核心,在實際運作下(當然是降速測試)
是否有 bug,目前有些 FPGA 內含 CPU,也可提前測試 embedded CPU
的溝通。一般來講,這樣的測試就是測到 cycle accuracy,所以如果
有所有周邊的 Verilog/VHDL Model (可準確到 cycle accuracy)的話,其實
也可以跑 Verilog/VHDL 模擬。例如 ARM 就有提供這樣的 Verilog/VHDL
model 供 Verification。只是最後通常還是會用 FPGA 做 integration
測試。
總之,你一開始問的問題就太大了。
怎麼驗證電路功能,確保電路 OK,要看你要作什麼,才有處裡的方法。
--
我是.......
可愛的哲哲喔...
※ 來源:‧四百年來第一靠邊站 culture.twbbs.org‧[FROM: royals]
推
08/07 10:12, , 1F
08/07 10:12, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 20 之 21 篇):