《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 利用P89C669的23b的線性地址并采用CPLD外部擴展
利用P89C669的23b的線性地址并采用CPLD外部擴展
摘要: P89C669是PHILIPS半導體一款51MX(存儲器擴展)內核的微處理器,其指令執行速度2倍于標準的80C51器件,線性地址經擴展后可支持高達8 MB的程序存儲器和8 MB的數據存儲器,這是他相對于標準51內核的最大優點。目前的單片系統越來越復雜,擴展的外部設備也更多,如果能充分利用P89C669的豐富的線性地址資源,將能大大增強系統能力。在一個嵌入式系統開發中,筆者采用ALTERA公司的CPLD芯片EPM7032利用這款單片機的線性地址擴展了豐富的外部設備資源。
關鍵詞: CPLD P89C669 EPM7032 KeilC
Abstract:
Key words :

  P89C669是PHILIPS半導體一款51MX(存儲器擴展)內核的微處理器,其指令執行速度2倍于標準的80C51器件,線性地址經擴展后可支持高達8 MB的程序存儲器和8 MB的數據存儲器,這是他相對于標準51內核的最大優點。目前的單片系統越來越復雜,擴展的外部設備也更多,如果能充分利用P89C669的豐富的線性地址資源,將能大大增強系統能力。在一個嵌入式系統開發中,筆者采用ALTERA公司的CPLD芯片EPM7032利用這款單片機的線性地址擴展了豐富的外部設備資源。

  1 P89C669的存儲器結構

  1.1 存儲結構

  P89C669的存儲器結構為哈佛結構,地址分配如表1所示。

地址分配

  從表1可見,P89C669對傳統的51內核的3部分存儲結構進行了相應的擴展,各個部分的片內存儲空間也增加了,如內部數據空間有1 280 B在片內,外部數據空間有768 B在片內,有96 kB的片內程序存儲空間等。

  尋址指令除了傳統的MOV,MOVX,MOVC外,EMOV指令與24位的通用指針寄存器EPTR可尋址16MB的全部空間,但是所占用的指令周期也較長。

  擴展外部數據存儲空問HDATA除了768 B在片內外,其余地址空間可以用來擴展外部設備(其實只要把片內的768 B通過指令將其屏蔽,也可以用來擴展外部設備)。

  1.2 P2口的讀寫時序分析

  尋址8 MB的數據存儲空間,需要有23 b的地址尋址能力,P89C669將傳統51內核的P2高位地址時分復用,從而得到23 b地址尋址能力,時序圖如圖1所示,即當使用23 b地址時,ALE為高時,地址位A16~A22輸出到P2.0~P2.6;ALE為低時,地址位A8~A14輸出到P2.0~P2.6。無論ALE為何值,位地址A15都從P2.7輸出。

時序圖

  2 系統外部設備擴展需求

  在某產品的控制系統中,擴展的外部設備比較豐富,利用P89c669的23 b地址尋址能力進行設備地址編碼,所以需要對23 b地址的時序邏輯進行處理,處理單元交給一塊ALTERA公司的CPLD(EPM7032)。

  EPM7032具有32個邏輯單元,約600個門級單元,可用IO口36個,內置IEEE std.1149.1 JTAG,方便可編程下載。

  在滿足系統資源的前提下,選用EPM7032,將P89C669的P2口作為處理單元輸入信號,經過CPLD的內部邏輯進行譯碼或數據鎖存,以獲得各個外部設備資源的選擇信號及少量的控制信號,如圖2所示。

EPM7032功能圖

  在本設計中,共需要得到設備選擇信號如SRAM芯片M68AF127B的片選CS_RAM,2個FLASH ROM芯片SST29SF040的片選CS_ROM0,CS_ROM1,模擬多路選擇器SN74LV4052的使能信號線CS_4052,另外還有一些控制信號線,這里就不一一介紹。

  實際上,P2口引入CPLD,就P89C669的23 b地址線而言,用來地址譯碼和少量的控制信號等主要是利用最高的幾位,在本設計中,由于SST29SF040用到地址線A0~A18,所以CPLD的地址譯碼處理只能是利用剩下的A19~A22,這將在下文的CPLD的譯碼單元可以看到。

  A0~A7低地址采用74HC573進行鎖存,A16~A18地址內容采用74HC574進行鎖存,如圖3所示。

A16

  M68AF127B,SST29SF040,74HCA052的功能連接圖如圖4所示,74HC4052用于UART口的擴展,如圖5所示。

74HCA052的功能連接圖

74HC4052用于UART口的擴展

  3 EPM7032S的邏輯設計

  CPLD的設計采用原理圖的方法進行設計,簡便快捷,如圖6所示,采用74374模塊鎖存P2口的輸入信號,ALE反向后得到_ALE作為74374的鎖存時鐘線輸入。

輸入信號鎖存單元

  對高位的地址線A19~A22進行地址譯碼,獲得各芯片的片選線,如圖7所示。

對高位的地址線A19

  如果不是對SST29SF040進行讀寫,則高位地址線A16~A18仍然可以利用,這里將其作為74HC4052的3個輸入控制線A,B,INH,即圖8中的A_4052,B_4052,CS_4052。

74HC4052控制單元

  4 KeilC51平臺的外部設備測試

  編寫設備驅動程序是在KeilC51的平臺上,由于利用了P89C669的23 b地址線,在C51的平臺上采用指針讀寫設備很方便,這里給出讀寫SRAM芯片M68AF127B的C源代碼例子,以供參考。

程序

  以上3句為測試SRAM的測試代碼,START_EX-TRAM為SRAM芯片的起始地址(可根據CPLD的內部設計進行相應的修改),第2,3句分別是寫、讀數據的宏。

  5 結 語

  利用P89C669的23 b的線性地址并采用CPLD擴展外部設備資源可以說是不錯的一個方法,對外部設備的訪問將顯得更加簡便,當然,在成本方面系統設計工程師也要加以考慮,并最終尋找一個性價比最高的方案。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 爽爽影院在线看| 高级别墅贵妇交换俱乐部小说| 市来美保在线播放| 久久亚洲av无码精品色午夜| 欧美一级夜夜爽视频| 亚洲熟妇av一区二区三区宅男| 粗大的内捧猛烈进出小视频| 国产suv精品一区二区6| 饥渴难耐16p| 国产校园另类小说区| 2021国产在线视频| 在线看欧美三级中文经典 | 国产免费一区二区三区免费视频| 男女同房猛烈无遮挡动态图| 国产麻豆精品精东影业av网站| eeuss影院www在线观看免费| 废柴视频网最新fcww78| 丰满少妇被粗大猛烈进人高清| 日本精品ova樱花动漫| 久久精品视频久久| 欧美xxxxx69| 亚洲国产成人久久一区二区三区| 欧美色图五月天| 亚洲精品456在线播放| 琪琪色在线播放| 免费大学生国产在线观看p| 精品人妻系列无码一区二区三区 | 9一14yosexyhd| 天天躁日日躁狠狠躁av麻豆 | 欧美巨大xxxx做受高清| 亚洲欧美日韩一级特黄在线| 热久久这里是精品6免费观看| 免费a级在线观看完整片| 精品久久久久久久久午夜福利| 午夜影院在线观看| 精品国产麻豆免费网站| 又大又粗又爽a级毛片免费看| 美女无遮挡免费视频网站| 和桃子视频入口网址在线观看| 美女性生活电影| 又色又爽又黄的视频网站|