国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

試用手記:為國產(chǎn)FPGA正名(三,存儲器)

發(fā)布時間:2011-5-25 11:40    發(fā)布者:絕對好文
關(guān)鍵詞: FPGA , 國產(chǎn) , 國產(chǎn)FPGA , 試用
作者:特權(quán)同學(xué)

有幾點(diǎn)關(guān)于代碼和數(shù)據(jù)存儲區(qū)配置的一些疑問,麻煩解答一下:      

問:代碼存儲器可以選擇OTP或者 extension memory,一般在最終軟件定型后使用OTP沒有問題,而在調(diào)試過程中會選擇extension memory。extension memory里有三類:EMB、SRAM和Custom,通常代碼存儲器應(yīng)該是非易失存儲器,而你們這里列出來的EMB和SRAM都是下電易失的,這一點(diǎn)我不是很明白?難道說extension memory只是在KeilC處于debug模式時代碼運(yùn)行的存儲區(qū),而非代碼下電存儲的介質(zhì)?EMB只有1K(最大可以到2K),如果設(shè)置了這個代碼存儲器,是不是KEILC DEBUG時代碼不可以超過1K?

FAE:EMB和SRAM都是易失的,用EMB是最大可支持2KB的code空間,EMB初始化的信息與FPGA配置信息一起存儲在內(nèi)嵌SPI Flash中,上電自動加載,用SRAM時,需要使用我們提供的SRAMLoader工程,利用Astro重配置特性進(jìn)行加載。

問:與上面類似的疑問,關(guān)于數(shù)據(jù)存儲區(qū),兩個選項(xiàng),on-ship SRAM默認(rèn)勾選,這個沒有疑問。而FP應(yīng)該是內(nèi)部擴(kuò)展的4M Flash,應(yīng)該是非易失存儲器,數(shù)據(jù)存儲器通常沒有必要是非易失的吧?我認(rèn)為按照常規(guī),代碼存儲是非易失存儲器,數(shù)據(jù)存儲是易失存儲器,而你們的配置選項(xiàng)讓我有點(diǎn)糊涂。

FAE:Astro內(nèi)部為8051提供16KB專用SRAM,用作data空間。

問:另外,SPI燒錄應(yīng)該是將FPGA配置數(shù)據(jù)燒錄到4M FLASH中吧?而用Configuration Packer功能應(yīng)該是要將FPGA配置數(shù)據(jù)和軟件hex文件封裝成一個文件燒錄到4M flash中吧?我這么嘗試過好像下電后系統(tǒng)沒有跑起來,那么是不是在系統(tǒng)的存儲器配置中有所講究呢?

FAE:Configuration Packer可以讓Astro內(nèi)存儲多個配置文件,利用它可以在使用SRAM做code空間時打包SRAMLoader工程進(jìn)行上電自動加載。附件中是關(guān)于Astro的幾個應(yīng)用文檔,您先看一下,寫的比較詳細(xì),相信對您理解Astro用法會很有幫助,謝謝!

昨天對Agate Logic負(fù)責(zé)硬件的FAE狂轟濫炸,對于其開發(fā)工具和器件的結(jié)構(gòu)都有更深入的了解和認(rèn)識,上面的幾個問答只是關(guān)于51硬核的數(shù)據(jù)和代碼存儲器方面的,好一番追問之后,總算逼出了幾個像模像樣的文檔出來,消化后再做了一些實(shí)踐,然后有一點(diǎn)收獲和對后續(xù)項(xiàng)目在存儲器配置上的一些可行性的想法。另外,關(guān)于時序方面的一些疑問也得到了解答,不是很放心,也問出了一些真真確確的“問題”來,并且目前在用軟件版本的一些bug也被我問出來了,目前還需要等著廠商給我提供補(bǔ)丁,所以關(guān)于時序方面的博文只能暫緩進(jìn)行。

特權(quán)同學(xué)問題提得比較到位,但不是很有水準(zhǔn)。FAE回答得也不是很容易讓人明白,最后還是文檔給出了比較權(quán)威的解答。

在討論Astro系列芯片51硬核的軟件運(yùn)行模式之前,要先看看Astro系列芯片到底已經(jīng)提供了哪些片內(nèi)的存儲資源,不看不要緊,一看嚇一跳——可謂品種齊全,滿足各類需求。

1.       總共1Mbit的OTP型存儲區(qū),其中64KB用于FPGA的配置數(shù)據(jù)存儲,另64KB用于51硬核的最終代碼存儲器。
2.       4Mbit(512KB)的FPGA和8051公用的SPI Flash。
3.       2塊9Kbit的可配置雙端口EMB。
4.       16KB的51硬核專用數(shù)據(jù)存儲器。

Astro系列芯片51硬核的軟件主要運(yùn)行模式:

小模式:

不外掛存儲器,使用芯片現(xiàn)有資源,F(xiàn)PGA配置數(shù)據(jù)和8051代碼(小于2KB)存儲于SPI Flash中。系統(tǒng)上電后,F(xiàn)PGA配置數(shù)據(jù)先從SPI Flash中導(dǎo)出并配置FPGA,也包括EMB的初始化數(shù)據(jù)(即軟件代碼從SPI FLASH搬運(yùn)到EMB中);完成后8051代碼直接從EMB中開始運(yùn)行。

內(nèi)嵌8051在無等待周期的狀態(tài)下,最快時鐘頻率可到70MHz,性能到47MIPS的性能。主要用于8051代碼較少時,調(diào)試生產(chǎn)兩便,成本也比較低。

手記二中的測試就是基于該模式,性能還算可以。

調(diào)試模式:

外掛SRAM存儲器,F(xiàn)P Bootloader配置數(shù)據(jù)、FPGA用戶程序配置數(shù)據(jù)和8051用戶代碼分段存儲于SPI Flash中。系統(tǒng)上電先從SPI Flash中導(dǎo)出FP BootLoder配置數(shù)據(jù)(內(nèi)含Loader部分)。配置FP包括EMB的初始化數(shù)據(jù),完成后SRAM Loader程序?qū)徇\(yùn)8051用戶代碼到外掛SRAM中;之后再從SPI Flash中導(dǎo)入FP用戶程序并重新配置FP,8051代碼在外掛SRAM中開始運(yùn)行。

內(nèi)嵌8051在無等待周期的狀態(tài)下,最快時鐘頻率可到35MHz,性能到23MIPS的性能。此模式主要用于8051代碼超過2KB調(diào)試時用。當(dāng)然也可用于生產(chǎn)。請注意外掛SRAM將增加成本。

這種模式由于不太可能使用,所以特權(quán)同學(xué)不過多研究,但這也是嵌入式系統(tǒng)中比較常見的一種BootLoder方式。

最終生產(chǎn)模式:

不外掛存儲器,8051代碼存儲于OTP存儲器中,F(xiàn)P配置數(shù)據(jù)存于OTP或SPI FLASH中。因?yàn)镺TP存儲器是一次性的,所以不能用于調(diào)試階段。一般產(chǎn)品最終定型后再使用OTP存儲器可以獲得最優(yōu)的性能和最低的成本。

而當(dāng)采用OTP 作為8051 代碼內(nèi)存,最高時鐘頻率可達(dá)100MHz。較理想的方法是用鎖相環(huán)PLL來產(chǎn)生8051 時鐘。CKCON SFR的低4位用來控制數(shù)據(jù)Memory 的等待周期。如果8051時鐘頻率高于45MHz,最好將value設(shè)置為大于等于2,以防止時鐘太快,數(shù)據(jù)還沒準(zhǔn)備好。

也就是說,OTP方式可以達(dá)到51硬核代碼運(yùn)行的最佳性能,甚至于性能的速度瓶頸已經(jīng)不是代碼存取,而是數(shù)據(jù)存取。

以上三種模式是比較推薦的,但是特權(quán)同學(xué)從實(shí)際工程需要來考慮,簡單的說,需要一種調(diào)試模式和一種生產(chǎn)模式。生產(chǎn)模式無可厚非的選擇OTP燒錄,而調(diào)試模式有點(diǎn)棘手,如果選擇小模式,代碼運(yùn)行量太小,頂多不過2K,基本干不了什么事。而選擇外擴(kuò)SRAM,有限的IO資源不會允許的。所以,有點(diǎn)苦惱,但是還好,還有一種最次的選擇——性能低下的第四種模式。

當(dāng)8051的性能低于1.4MIPS時,可用spi flash作為8051的代碼存儲器。此模式的運(yùn)行環(huán)境如下:

1. 選用片內(nèi) SPI FLASH;

2. FPGA的配置數(shù)據(jù)和8051代碼存放在同一個SPI FLASH 里;

3. 8051 與SPI FLASH 接口大約需要90 個LE cells;

4. 8051 的內(nèi)核時鐘最快為30MHz 左右, 8051 最快運(yùn)行性能大約為1.4MIPS;

5. 順序取指需要 8 個時鐘周期,跳轉(zhuǎn)取指需要40 個周期;

在嘗試SPI FLASH模式的時候,遇到了比較有意思的事。特權(quán)同學(xué)根據(jù)實(shí)例做SPI FLASH的運(yùn)行測試,結(jié)果搞不定,也找不到相關(guān)的IP核。于是求問FAE,F(xiàn)AE直接告知這個IP核還沒有集成到工具中,然后把源代碼都發(fā)過來了。呵呵,雖然工具不完善,不過服務(wù)倒是很周到。

由于基于SPI FLASH的模式是在51硬核與SPI FLASH之間使用FPGA邏輯搭建了一個FLASH讀取的模塊。所以經(jīng)過測試,確實(shí)這個FLASH讀取控制的邏輯模塊頻率不能太高,過高FLASH就要**了,理論值是30M,而特權(quán)同學(xué)用了25M。然后使用上一篇手記同樣的方法改變硬核的頻率進(jìn)行測試。

延時函數(shù)
EMB模式
SPI FLASH模式
50MHz
100MHz
50MHz
100MHz
Delay(1)
5.0us
2.5us
20us
20us
Delay(2)
6.6us
3.3us
27.5us
27.5us
Delay(3)
8.3us
4.2us
35us
35us
Delay(4)
9.9us
5.0us
42.5us
42.5us
i++與i
約1.63us
約0.83us
約7.5us
約7.5us

結(jié)果證明,51硬核的頻率受制于指令的讀取速度,那么在SPI FLASH模式下速度性能確實(shí)大打折扣。
本文地址:http://m.4huy16.com/thread-66780-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • Microchip第22屆中國技術(shù)精英年會——采訪篇
  • 技術(shù)熱潮席卷三城,2025 Microchip中國技術(shù)精英年會圓滿收官!
  • 電動兩輪車設(shè)計(jì)生態(tài)系統(tǒng)
  • 常見深度學(xué)習(xí)模型介紹及應(yīng)用培訓(xùn)教程
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表