天天被操天天被操综合网,亚洲黄色一区二区三区性色,国产成人精品日本亚洲11,欧美zozo另类特级,www.黄片视频在线播放,啪啪网站永久免费看,特别一级a免费大片视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>用CPLD實現(xiàn)單片機讀寫模塊

用CPLD實現(xiàn)單片機讀寫模塊

時間:2023-02-21 00:18:01 電子通信論文 我要投稿
  • 相關(guān)推薦

用CPLD實現(xiàn)單片機讀寫模塊

  摘要:介紹實現(xiàn)單片機與Xilinx公司XC9500系列可編程邏輯器件的讀寫邏輯功能模塊的接口設(shè)計,以及Xilinx公司的XC9500系列可編程邏輯器件的開發(fā)流程。
  關(guān)鍵詞:復(fù)雜可編程邏輯電路微處理器在系統(tǒng)編程現(xiàn)場可編程門陣列
  
  1概述
  
  CPLD(復(fù)雜可編程邏輯電路)是一種具有豐富的可編程I/O引腳的可編程邏輯器件,具有在系統(tǒng)可編程、使用方便靈活的特點;不但可實現(xiàn)常規(guī)的邏輯器件功能,還可實現(xiàn)復(fù)雜的時序邏輯功能。把CPLD應(yīng)用于嵌入式應(yīng)用系統(tǒng),同單片機結(jié)合起來,更能體現(xiàn)其在系統(tǒng)可編程、使用方便靈活的特點。CPLD同單片機接口,可以作為單片機的一個外設(shè),實現(xiàn)單片機所要求的功能。例如,實現(xiàn)常用的地址譯碼、鎖存器、8255等功能;也可實現(xiàn)加密、解密及擴展串行口等單片機所要求的特殊功能。實現(xiàn)嵌入式應(yīng)用系統(tǒng)的靈活性,也提高了嵌入式應(yīng)用系統(tǒng)的性能。
  
  CPLD(復(fù)雜可編程邏輯電路)是一種具有豐富的可編程I/O引腳的可編程邏輯器件,具有在系統(tǒng)可編程、使用方便靈活的特點;不但可實現(xiàn)常規(guī)的邏輯器件功能,還可實現(xiàn)復(fù)雜的時序邏輯功能。把CPLD應(yīng)用于嵌入式應(yīng)用系統(tǒng),同單片機結(jié)合起來,更能體現(xiàn)其在系統(tǒng)可編程、使用方便靈活的特點。CPLD同單片機接口,可以作為單片機的一個外設(shè),實現(xiàn)單片機所要求的功能。例如,實現(xiàn)常用的地址譯碼、鎖存器、8255等功能;也可實現(xiàn)加密、解密及擴展串行口等單片機所要求的特殊功能。實現(xiàn)了嵌入式應(yīng)用系統(tǒng)的靈活性,也提高了嵌入式應(yīng)用系統(tǒng)的性能。
  
  2Xilinx公司的可編程邏輯器件
  
  Xilinx公司的XC9500系列可編程邏輯器件是一款高性能、有特點的可編程邏輯器件。它的系統(tǒng)結(jié)構(gòu)如圖1所示。從結(jié)構(gòu)上看,它包含三種單元:宏單元、可編程I/O單元和可編程的內(nèi)部連線。它的主要特點是:
  
 、俑咝阅。在所有可編程引腳之間pin-pin延時5ns;系統(tǒng)的時鐘速度可達到100MHz。
  
 、谌萘糠秶。Xilinx公司的XC9500系列可編程邏輯器件的容量范圍為36~288個宏單元;可用系統(tǒng)門為800~6400個。
  
 、5V在系統(tǒng)可編程?梢跃幊10000次。
  
 、芫哂袕姶蟮膹娔_鎖定能力。
  
 、菝總宏單元都有可編程低功耗模式。
  
 、逈]有用的引腳有編程接地能力。
  
  Xilinx的XC9500系列可編程邏輯器件的主要性能如表1所列。
  
  3CPLD同單片機接口設(shè)計
  
  CPLD同單片機接口原理如圖2所示。
  
  CPLD同單片機接口設(shè)計中,單片機采用Atmel公司的AT89C52,CPLD采用Xilinx公司的XC95216。該CPLD芯片結(jié)構(gòu)及性能見圖1和表1。AT89C52通過ALE、CS、RD、WE、P0口(數(shù)據(jù)地址復(fù)用)同XC95216芯片相連接。
  
  表1XilinxXC9500t系列器件
  
  項目XC9536XC9572XC95108XC95144XC95216XC95288寄存器/個3672108144216288可用門數(shù)/個80016002400320048006400宏單元數(shù)/個3672108144216288fPD/ns57.57.57.51010tSU/ns3.54.54.54.56.06.0tCO/ns4.04.54.54.56.06.0fCNT/MHz100125125125111.1111.1fSYSTEM/MHz10083.383.383.366.766.7
  注:fCNT=16位計數(shù)器最高工作頻率;fSYSTEM=整個系統(tǒng)的最高工作效率。
  
  ALE:地址鎖存信號。
  
  CS:片選信號。
  
  RD:讀信號。
  
  WR:寫信號。
  
  AD0~AD7:數(shù)據(jù)地址復(fù)用信號。
  
  本例的設(shè)計思想是,在XC95216設(shè)置兩個控制寄存器,通過單片機對兩個控制寄存器的讀寫來完成對其它過程的控制。
  
  XC95216設(shè)置的兩個控制寄存器,可以作內(nèi)部寄存器,也可以直接是映射為I/O口。
  
  圖2XC9516同單片機接口原理圖
  
  4CPLD同單片機接口設(shè)置結(jié)果
  
  本例中,使用Xilinx公司提供的FundationISE4.2i+Modelsim5.5f軟件實現(xiàn)設(shè)計。實現(xiàn)設(shè)計的源文件模塊如下:
  
  /**************************
  
  //MCU和XC95216接口程序
  
  //目的:MCU讀寫XC95216
  
  /**************************/
  
  modulemcurw(MCU_DATA,ALE,CS,RD,WE,CONREG1,CONREG2);
  
  inout[7:0]MCU_DATA;//單片機的地址數(shù)據(jù)復(fù)用信號
  
  output[7:0]CONREG1,CONREG2;//內(nèi)部控制寄存器
  
  inputALE;//單片機的地址鎖存信號
  
  inputCS;//單片機的片選信號
  
  inputRD;//單片機的讀信號
  
  inputWE;//單片機的寫信號
  
  reg[7:0]LAMCU_DATA;//內(nèi)部控制寄存器
  
  reg[7:0]ADDRESSREG;//內(nèi)部地址鎖存寄存器
  
  reg[7:0]CONREG1;//內(nèi)部控制寄存器
  
  reg[7:0]CONREG2;//內(nèi)部控制寄存器
  
  assignMCU_DATA=RD?8'bzzzzzzzz:LAMCU_DATA;
  
  initial//寄存器初始化
  
  begin
  
  LAMCU_DATA<=0;
  
  ADDRESSREG<=0;
  
  CONREG1<=0;
  
  CONREG2<=0;
  
  end
  
  always@(negedge ALE 
  
  begin
  
  ADDRESSREG<=MCU_DATA;//地址鎖存
  
  End
  
  always@(posedge WE
  
  begin
  
  if(!CS&&ADDRESSREG[0]==0))LAMCU_DATA
  
  <=CONREG1;//從地址為0的CONREG1寄存器讀數(shù)據(jù)
  
  elseif(!CS&&(ADDRESSREG[0]==1))LAMCU_DATA<=CONREG2;
  
  //從地址為1的CONREG2寄存器讀數(shù)據(jù)
  
  elseLAMCU_DATA<=8'bzzzzzzzz;
  
  end
  
  else
  
  LAMCU_DATA<=8'bzzzzzzzz;
  
  End
  
  Endmodule
  
  使用Modelsim5.5f仿真結(jié)果如圖3和圖4所示。圖中ALE、CS、RD、WE、MCU_DATA是測試激勵源信號,代表AT89C52接口信號;CONREG1和CONREG2的內(nèi)部寄存器;ADDRESSREG是內(nèi)部地址鎖存寄存器。
  
  圖3CONREG1寫過程圖4CONREG1讀過程
  
  圖3是CONREG1寫過程。首先,在ALE信號的下降沿,鎖存MCU_DATA的數(shù)據(jù)到ADDRESSREG內(nèi)部地址鎖存寄存器。然后,在WE信號的上升沿,把MCU_DATA(0XAA)的數(shù)據(jù)鎖存到寄存器CONREG1。
  
  圖4是CONREG1讀過程。首先,在ALE信號的下降沿,鎖存MCU_DATA(0X00)的數(shù)據(jù)到ADDRESSREG內(nèi)部地址鎖存寄存器。然后,在RD信號的低電平期間,把MCU_DATA(0XAA)的數(shù)據(jù)鎖存到寄存器CONREG1。
  
  從圖3和圖4可以看出,對CONREG1寄存器的讀、寫過程完全滿足進序要求,CONREG2的讀寫過程同CONREG1一樣,也完全滿足時序要求,實現(xiàn)了期望的功能。
  
  結(jié)語
  
  本文實現(xiàn)CPLD與單片機接口設(shè)計是筆者設(shè)計的高速采樣設(shè)備的一部分,經(jīng)實際驗證完全正確。簡單地修改該模塊,筆者已成功地將其應(yīng)用于多個CPLD或FPGA與單片機接口的項目中。

【用CPLD實現(xiàn)單片機讀寫模塊】相關(guān)文章:

用CPLD實現(xiàn)單片機與ISA總線接口的并行通信08-06

單片機實現(xiàn)對CF卡的讀寫08-06

用PIC單片機實現(xiàn)的IC卡讀寫器08-06

用CPLD實現(xiàn)DSP與PLX9054之間的連接08-06

單片機控制GSM模塊實現(xiàn)短信收發(fā)的軟件設(shè)計08-06

用CPLD實現(xiàn)嵌入式平臺上的實時圖像增強08-06

用CPLD實現(xiàn)嵌入式平臺上的實時圖像增強08-06

IIC總線通訊接口器件的CPLD實現(xiàn)08-06

用單片機實現(xiàn)SRAM工藝FPGA的加密應(yīng)用08-06