球磨機ARM子系統的擴展設計
對于球磨機的控制系統來說,由于芯片本身集成了兩個處理器,所以芯片內部所能提供的存儲器不可能太大,如ARM側只提供了4K×32位的片上存儲器,因此作為硬件設計來考慮,肯定需要外擴存儲器。同時對于球磨機的任何硬件系統而言,外部存儲器的擴展都是非常重要的,不同的CPU,外部存儲器的擴展也各具特色。就VC5471而言不僅有ARM子系統的外部存儲器的擴展,而且有DSP子系統的外部存儲器擴展。
ARM子系統外部SRAM、ROM (Flash)擴展球磨機控制系統中的ARM子系統不僅對于VC5471芯片是主處理器,而且就整個硬件系統而言,ARM將完成的也是較為復雜、繁瑣的任務,程序量肯定較大,所以在存儲器的容量上將考慮的偏大一些,而且VC5471對于外部存儲器種類的支持也很多,因此,硬件連接上肯定比較靈活。下面對ARM子系統的外部存儲器進行介紹。
VC5471對ARM子系統外部存儲器的支持包括:ROM (Flash),SRAM和SDRAM。外部數據總線是雙向32位總線,VC5471對外部總線的管理有以下四大特點。
1.五根外部芯片片選信號線,每根都給予8M存儲器訪問空間;
2.存儲器訪問器件允許加入等待周期用以連接較低速的存儲器件,并支持內部周期的延時以防止外部數據總線的競爭;
3.MCU對于外部非SDRAM的存儲器和外部接口的讀寫訪問可以是8位、16位或32位;
4.MCU對于外部SDRAM存儲器的訪問可以是16位或32位。
實際的系統設計中,ARM側的32位總線訪問的ARM存儲器是由2塊Integrated Silicon Solution公司的256K×16的靜態存儲器構成。如果ARM側工作在 工作頻率47.5MHZ的情況下,存儲器的實際速度如果大于21.05ns,那就必須要插入等待周期,而實際上IS61LV25616AL是一種高速存儲器件,可選用只有l0ns的SRAM。ARM的32位數據總線分別與2塊SRAM的數據總線相連接,地址線的低兩位懸空,其他與SRAM的地址線相連,讀寫控制線R/W,允許輸出控制線OE分別與SRAM的WE 、OE 連接,BE四根線控制線分別接到4塊或2塊存儲器的使能端,在使能信號有效時,32位數據同時寫、入存儲單元。
CS0作為外部SRAM的片選信號,CS0的地址空間映射到了SRAM上,而 CS1作為外部ROM(Flash)的片選信號,CS1的地址空間映射到ROM(Flash)上。由于在調試階段CS0所對應的空間向量 部分要映射到RAM上,而當系統獨立運行時,0x0000:0000處的復位向量要映射到ROM(Flash)中,所以使用了跳線,使在調試和程序固化后,CS0、CS1地址空間映射可以改變。
以上介紹的是對外部SRAM存儲器的擴展,對于外部ROM(Flash)存儲器的擴展也基本相似,實際上使用的ROM(Flash)存儲器是AMD公司的Am29LV320MT/B,它是一種32M位,3V單電源供電的Flash存儲器,在寫入速度上共有90ns、100ns、110ns、120ns共四種可選。ARM側32位總線訪問的ROM存儲器件也是由2塊2M×16的速閃存儲器構成。對于 采用的90ns的器件在實際使用時根據ARM側所工作的頻率應該考慮是否插入等待周期,由于ARM可使用16位Thumb指令集,所以2塊2M×16的速閃存儲器以存儲單元為16位的模式連接到32位數據總線上,存儲器上的BYTE引腳決定了存儲器是否工作在16位模式。