《電子技術應用》
您所在的位置:首頁 > 微波|射頻 > 設計應用 > 使用DS89C450對Xilinx PROM的在系統編程設計
使用DS89C450對Xilinx PROM的在系統編程設計
摘要: 可編程邏輯器件(FPGA、CPLD等)廣泛用于現代電子設計中,在一個系統中往往會用1片以上的可編程邏輯器件。作為最大的供應商之一,Xilinx公司的器件獲得了廣泛的應用。基于查找表技術的FPGA在應用時需要外置一個非易失性存儲器來存儲配置數據。如何方便靈活地對一個系統中多片FPGA的配置數據進行升級是本文討論的問題。
Abstract:
Key words :
  可編程邏輯器件(FPGA、CPLD等)廣泛用于現代電子設計中,在一個系統中往往會用1片以上的可編程邏輯器件。作為最大的供應商之一,Xilinx公司的器件獲得了廣泛的應用。基于查找表技術的FPGA在應用時需要外置一個非易失性存儲器來存儲配置數據。如何方便靈活地對一個系統中多片FPGA的配置數據進行升級是本文討論的問題。

  1 系統概述

  Xilinx的Platform Flash PROM包括XCFxS和XCFxP系列,它們都是帶JTAG接口的PROM,都支持JTAG ISP Programming,本文主要以XCF-01S為例。DS89C450型單片機是一款超高速的高性能單片機,其顯著特點是速度快,一個機器周期只需要一個時鐘周期;通過使能,可以激活其內部的1KB數據存儲器,來作為數據緩存;同時它具有64KB的內部程序存儲器,支持ISP、IAP。

  本設計主要實現的功能是:

  ①DS89C450的在應用編程(IAP)。通過使用IAP,單片機用戶代碼的更新和修改將十分方便。

  ②使能DS89C450內部1KB數據存儲器,在對Platform Flash PROM編程時,作為數據緩存,這樣將無需在片外擴展數據存儲器,從而減小了電路板面積,同時提高了訪問速度,節省成本。

  ③用DS89C450的P1口的4根線模擬JTAG的時序邏輯,實現與Platform Flash PROM的通信;余下的4根線用來構造片選邏輯,將整個電路設計在背板上,將串口引出到設備面板來與上位機通信。

  ④采用匯編語言開發,使iMPACT下載和單片機下載互不沖突,方便實現插板式機箱結構。

  該設計在設備調試、遠程維護、功能擴展和修改等方面將具有很高的靈活性,系統示意圖如圖1所示。

a.JPG

  2 DS89C450 IAP的實現

  DS89C450內部集成了64 KB的Flash程序存儲器,64 KB Flash分為2部分,低32 KB區(地址范圍0000H~7FFFH)和高32 KB區(地址范圍8000H~FFFFH)。只有高32 KB區才可以由IAP程序訪問,這個空間將存放用戶代碼。DS89C450內部有一個存儲器管理單元(MMU),它實際上就是一個狀態機,獨立于處理器核心而存在,只需向相應的特殊功能寄存器中寫入命令、地址、數據等,將啟動MMU,實現對高32 KB區的擦除、編程、校驗以及系統復位。而在低32 KB區存的是IAP程序,IAP程序代碼是通過燒錄器燒寫進去的。

  IAP程序將通過串口和上位機通信,在系統上電后,上位機發出是否要更新高32 KB區代碼的命令,若不更新,則IAP程序立即跳轉至8000H處取指令,執行高32 KB區的用戶代碼;若上位機發出了更新高32KB區代碼的命令,IAP程序將進入工作狀態,它將首先擦除高32 KB區,然后準備接收新的用戶代碼(即對Platform Flash PROM操作的代碼),收到新代碼數據之后,將其寫入高32 KB區;新代碼文件全部寫入之后,由上位機發出校驗命令,IAP程序將高32 KB區按字節讀出,并計算出累加和,作為校驗和回送上位機。

  上述所有操作都是通過讀寫2個特殊功能寄存器來實現的,這2個寄存器是FCNTL(地址:D5H)和FDATA(地址:D6H),圖2給出了編程的流程。

b.JPG

  3 DS89C450片上1 KB數據存儲器的使用

  無論是在IAP程序更新高32 KB區的用戶代碼時,還是在刷新Platform Flash PROM內的配置數據時,在DS89C450和上位機之間都會有大量的數據傳遞。DS89C450內部集成了1 KB的數據存儲器,它將用作數據的緩存,因此不需要再擴展外部數據存儲器。同時,采用匯編語言開發,將有效提高資源的利用率。這1 KB數據存儲器在默認情況下是不可用的,需要設置相應的特殊功能寄存器位來激活。將DME0位(PMR.0)置1激活它,激活之后采用MOVX指令訪問,相比訪問外部擴展的數據存儲器速度更快。

  4 DS89C450與Xilinx Platform Flash PROM

  結合Xilinx的器件,先簡要介紹JTFAG接口的工作原理。

  JTAG又稱為邊界掃描(boundary scan),是符合IEEE STD 1149.1的通信標準,它含有一個TAP控制器,也就是一個狀態機。所有的指令、數據的輸入以及數據的輸出都是在狀態機的控制下完成的,如圖3所示。

c.JPG

  JTAG接口一般用到了下面4根線:

  TMS——模式選擇輸入,在TCK的上升沿送入TAP控制器,用于狀態的轉換;

  TDI——輸入引腳,指令和數據通過它在TCK的上升沿送入TAP控制器;

  TDO——輸出引腳,數據在TCK的下降沿由此輸出;

  TCK——輸入時鐘,為TAP控制器的輸入和輸出提供時序控制。

  TAP控制器含有1個指令寄存器和若干數據寄存器(數據掃描鏈),對于Xilinx的可編程邏輯器件,其指令寄存器一般為8位。TAP控制器的工作流程是,通過TMS引腳,使狀態機按照圖3所示的轉換圖處于某一狀態下,送入特定的指令,TAP控制器對指令進行譯碼,譯碼結果將產生相關動作,例如選擇一條數據掃描鏈準備接收數據,或捕獲功能引腳信號到數據寄存器等。

  本設計中,硬件連接圖如圖4所示,每個JTAG接口都與一片74AHCT245相連,DS89C450的P1.0、P1.1、P1.2、P1.3分別對應TMS、TD-I、TDO、TCK的功能;而P1.4、P1.5、P1.6、P1.7通過譯碼器74HC138構造片選邏輯。當P1.7為低電平時,譯碼器74HC138所有的輸出引腳/Y0~/Y7均為高電平,所有74AHCT245的/0E腳均為高,因此,所有的JTAG接口均未選中,這時,它們都可以通過Xilinx Impact軟件進行操作。這個狀態作為系統上電之后的默認狀態。圖4作為示意圖,只畫出了2個JTAG接口,而最多可以連接8個JTAG接口。

d.JPG

  當需要對某個JTAG連接的Platform Flash PROM編程時,上位機通過串口向DS89C450發出命令,DS89C450收到正確的命令之后,打開譯碼器的G1門,對8個JTAG接口進行掃描,將掃描到的IDCODE上報上位機,空的JTAG接口將掃描到全“1”碼;然后,上位機送出需更新代碼的板卡地址,DS89C450根據這個地址選擇指定的JTAG接口(即選擇了需要更新代碼的PlatformFlash PROM),自動升級也就開始了。升級結束,關閉譯碼器的G1門,回到默認狀態。

  一般情況下,具體到某一塊板卡,其上的JTAG插針,是將Platform Flash PROM的JTAG和FPGA的JTAG串聯起來的菊花鏈結構。例如,插針的TDI→(TDI,TDO)→(TDI,TDO)→插針的TDO,用括號內的表示XCF01S或FPGA。因此,在圖4中的JTAG接口指的是JTAG插針,而非某個具體器件的JTAG口。基于這一點,DS89C450要實現對Platform Flash PROM的操作,需要將菊花鏈中的FPGA旁路(bypass)。

  要對Platform Flash PROM的內容進行更新,上位機需將新文件(bin格式)按照一定長度的字節數分批次送給DS89C450,DS89C450將本次收到的定長數據寫入Platform Flash PROM,寫完之后,準備接收下一幀,依此往復,直到將新文件處理完。

  對于XCF01S,其扇區大小為256字節,下面以每次傳輸256個字節為例,圖5給出了操作Platform Flash PROM的指令及編程流程。表1為操作Platform FlashPROM的指令。

f.JPG

e.JPG

  結語

  本設計的優點是低成本、高性能、高靈活性。低成本體現在硬件上,用到的器件少,節省電路板空間;DS89C450是一款高性能的單片機,速度快,工作穩定;高靈活性體現在2個更新——一是可通過IAP程序更新DS89C450內部高32 KB區的用戶程序,二是可通過DS89CA50內部高32 KB區的用戶程序來更新Platform Flash PROM內的數據。同時,多片Platform Flash PROM的更新實現。這樣,整個系統的更新維護將十分方便。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品免费看| 亚洲国产欧洲综合997久久| 免费成人性网站| 久久国产精品久久w女人spa| 亚洲小说区图片区| 亚洲久色影视| 亚洲人成在线播放| 亚洲国产日韩美| 久久精品国产99国产精品| 午夜欧美视频| 欧美在线日韩| 欧美一区亚洲二区| 欧美一区二区精品| 亚洲欧美欧美一区二区三区| 亚洲在线播放电影| 亚洲欧美日韩精品久久久| 亚洲一区二区在线免费观看视频 | 国产精品久久久久久户外露出 | 国产精品私人影院| 国产精品一区二区久久久| 国产精品亚洲片夜色在线| 国产精品午夜av在线| 国产欧美日韩麻豆91| 国产日本欧洲亚洲| 国产主播一区二区三区| 狠色狠色综合久久| 亚洲第一伊人| 亚洲精品视频在线播放| 日韩一级大片| 亚洲综合国产| 久久精品日韩一区二区三区| 91久久国产精品91久久性色| 亚洲美女区一区| 亚洲午夜精品一区二区三区他趣| 亚洲伊人久久综合| 久久精品人人做人人爽| 久久影视精品| 欧美久久久久久久久久| 欧美手机在线视频| 国产欧美日韩高清| 一区二区在线不卡| 亚洲精品欧美| 亚洲免费伊人电影在线观看av| 欧美在线www| 亚洲精品午夜| 午夜亚洲激情| 蜜桃av久久久亚洲精品| 欧美理论电影在线观看| 国产精品久久久久久av下载红粉| 国产日韩亚洲| 亚洲国产精品一区制服丝袜| 在线一区观看| 欧美在线影院在线视频| 亚洲精品护士| 午夜精品久久久久| 女人色偷偷aa久久天堂| 欧美日韩一区在线观看| 国产一区二区成人久久免费影院| 亚洲国产精品激情在线观看| 亚洲视频在线一区| 亚洲高清色综合| 亚洲午夜久久久久久久久电影院| 久久精品国产精品亚洲| 欧美激情视频在线免费观看 欧美视频免费一 | 欧美日韩视频| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲精品自在久久| 香蕉成人伊视频在线观看| 亚洲精品国产精品国自产观看浪潮| 亚洲欧美成人在线| 欧美mv日韩mv国产网站app| 国产精品国产三级国产普通话三级 | 久久久噜噜噜久久中文字幕色伊伊| 欧美精品一区二区三区蜜桃 | 亚洲人成网站在线观看播放| 亚洲综合欧美日韩| 99精品欧美一区| 久久一本综合频道| 国产精品第一区| 亚洲国产一区二区a毛片| 国产精品99久久久久久久久久久久| 久久精品99国产精品日本| 亚洲伊人伊色伊影伊综合网| 免费在线看成人av| 国产精品网站在线观看| av72成人在线| 亚洲三级免费| 久久综合久久美利坚合众国| 国产精品美女久久久久久久| 亚洲欧洲日产国产综合网| 欧美在线视频网站| 午夜精品一区二区三区在线播放| 欧美精品aa| 亚洲电影av在线| 欧美亚洲在线播放| 亚洲宅男天堂在线观看无病毒| 欧美aⅴ99久久黑人专区| 国产欧美一区二区精品婷婷| 99视频精品在线| 夜夜爽www精品| 欧美成年人在线观看| 国产午夜亚洲精品理论片色戒| 亚洲私人影吧| 亚洲一级电影| 欧美日韩另类一区| 亚洲欧洲另类国产综合| 亚洲欧洲中文日韩久久av乱码| 久久久久国产精品www| 国产精品人人做人人爽| 一区二区日韩| 亚洲午夜精品福利| 欧美日韩国产色视频| 亚洲黄色高清| 亚洲精品日韩激情在线电影| 美女诱惑一区| 伊人久久综合| 亚洲激情不卡| 免费亚洲电影| 亚洲国产二区| 亚洲精品免费网站| 欧美成人综合网站| 亚洲黄色有码视频| 99精品国产在热久久| 欧美日韩dvd在线观看| 亚洲巨乳在线| 在线视频精品一区| 欧美日在线观看| 一本一本久久a久久精品综合麻豆| 一区二区三区高清在线| 欧美激情一区二区三区在线视频观看| 亚洲福利视频一区二区| 亚洲精品在线电影| 欧美日韩精品免费在线观看视频| 亚洲区一区二| 亚洲天堂av在线免费观看| 欧美三级网址| 亚洲一区在线免费观看| 欧美在线观看视频一区二区三区| 国产欧美日韩精品a在线观看| 午夜影院日韩| 老司机67194精品线观看| 亚洲电影av| 亚洲天堂免费在线观看视频| 国产精品国产三级国产专播精品人| 亚洲夜晚福利在线观看| 欧美一区二区黄色| 国产一区欧美| 亚洲人成人一区二区三区| 欧美精品在线观看91| 亚洲天堂男人| 久久精品国产99| 在线日韩av| 亚洲午夜羞羞片| 国产视频丨精品|在线观看| 久久精品夜色噜噜亚洲a∨| 欧美成人日本| 亚洲午夜未删减在线观看| 久久国产精品72免费观看| 在线国产欧美| 亚洲一区精品电影| 国产日韩欧美三区| 91久久综合| 国产精品大全| 久久精品免费播放| 欧美色图首页| 欧美一区二区三区四区在线观看地址 | 亚洲在线观看视频网站| 老牛国产精品一区的观看方式| 亚洲精品激情| 欧美一区二区性| 亚洲第一视频网站| 亚洲欧美视频一区| 激情成人亚洲| 亚洲天堂av在线免费| 国产综合色一区二区三区| 一本久久综合亚洲鲁鲁五月天| 国产精品入口66mio| 亚洲日本欧美| 国产精品欧美日韩久久| 亚洲激情欧美激情| 国产精品久久久对白| 亚洲国产精品电影在线观看| 欧美视频一区二区三区四区| 欧美在线视频在线播放完整版免费观看 | 欧美日韩视频| 亚洲第一久久影院| 欧美天天综合网| 亚洲黄色影片| 国产欧美亚洲精品| 国产精品99久久久久久久久| 国内精品免费午夜毛片| 亚洲永久免费视频| 亚洲激情另类| 久久精品国亚洲| 一区二区三区精品| 欧美xxxx在线观看| 亚洲欧美日韩直播| 欧美日韩色综合| 亚洲精品日韩精品| 激情综合在线|