Multi line SPI-Flash controller of the invention discloses an automatic handling and adaptation device, including the bus slave interface module, register module, interrupt module, clock signal generation module, state machine module, FIFO queue, shift control module and DMA interface module. SPI flash controller of the invention not only support standard single SPI-flash, also support this kind of multi line SPI-flash, the clock frequency is low, compared with the standard SPI-flash controller, the multi line SPI-flash controller can greatly improve the efficiency of data transmission. The SPI-flash controller of the invention also includes the DMA request / response and data channels, using general DMA system to carry the data, which not only can greatly reduce the burden of CPU, improve data transmission efficiency, but also make full use of the system resources.
【技術實現步驟摘要】
自動搬運且適應器件的多線SPI-Flash控制器
.本專利技術涉及SPIFlash控制器領域,具體是一種自動搬運且適應器件的多線SPIFlash控制器。
技術介紹
標準的串行外圍設備接口閃存控制器(簡稱SPIflashcontroller)均只支持單線對flash進行讀寫擦除等操作。如圖1所示,在一個實際系統中,SPIFlash芯片一般用于存放程序或者數據等內容,且其容量往往比較大。在系統啟動的時候,需要將SPIflash中的內容讀取到片內存儲器(memory)供使用。在此大批量數據傳輸的情況下,SPIflash控制器內的發送和接收緩存器(簡稱RXFIFO和TXFIFO)深度有限,需要處理器(CPU)在每一次FIFO滿了之后進行讀取和重新配置,大大加重了CPU的負擔。SPIflash廣泛應用于電子設備中用來進行數據的存儲。傳統的SPIflash一般主要包括時鐘引腳(SCLK)、片選引腳(CS)、發送數據引腳(SI)、接收數據引腳(SO)、寫保護引腳(WP)和保持引腳(HOLD)。如圖2、圖3所示是標準的SPIflash讀操作、寫操作時序,在讀操作中,SPIflash控制器先從高位到低位發送一個8比特的指令和若干比特的地址,然后數據就按高位到低位從flash器件中輸出,當CS拉高后,讀操作結束;在寫操作中,SPIflash控制器先從高位到低位發送一個8比特的指令和若干比特的地址,然后數據從高位到低位傳送到flash器件中,當CS拉高后,寫操作結束。這類SPIflash的特點是引腳數目少,且都是單向的,控制簡單,但是其傳輸效率較低,特別是在時鐘頻率較低時尤為明 ...
【技術保護點】
自動搬運且適應器件的多線SPI?Flash控制器,包括總線從機接口模塊、寄存器模塊、中斷產生模塊、時鐘信號產生模塊、狀態機模塊、先進先出隊列、移位控制模塊、dma接口模塊,其特征在于:所述總線從機接口模塊,作為處理器以及通用DMA等總線主機訪問SPI?flash控制器的通道,用于控制器與外部總線和內部FIFO和寄存器模塊進行對接;并控制寄存器模塊的讀寫;寄存器模塊,用于接收總線從機接口發過來的配置信息,并存儲;通過控制信號線C1~C5對各個模塊進行配置和控制;狀態機模塊,用于所述SPI?flash控制器的調度,其接收寄存器模塊的控制信息以及FIFO的狀態信息,利用這些控制信息產生相應的動作和信號;中斷產生模塊,用于從狀態機模塊收集異常信息、開始和結束等關鍵信息,利用這些信息并結合寄存器模塊的控制信息(C5),產生對應的中斷信號,并將此中斷信號伸出提供給片上系統(SoC)使用;時鐘信號產生模塊,用來產生SPI?flash接口的時鐘SCLK,還接收狀態機模塊的控制信息;先進先出隊列(TX/TX?FIFO):作為發送FIFO(TX?FIFO)和接收FIFO(RX?FIFO),發送FIFO和接 ...
【技術特征摘要】
1.自動搬運且適應器件的多線SPIFlash控制器,包括總線從機接口模塊、寄存器模塊、中斷產生模塊、時鐘信號產生模塊、狀態機模塊、先進先出隊列、移位控制模塊、dma接口模塊,其特征在于:所述總線從機接口模塊,作為處理器以及通用DMA等總線主機訪問SPIflash控制器的通道,用于控制器與外部總線和內部FIFO和寄存器模塊進行對接;并控制寄存器模塊的讀寫;寄存器模塊,用于接收總線從機接口發過來的配置信息,并存儲;通過控制信號線C1~C5對各個模塊進行配置和控制;狀態機模塊,用于所述SPIflash控制器的調度,其接收寄存器模塊的控制信息以及FIFO的狀態信息,利用這些控制信息產生相應的動作和信號;中斷產生模塊,用于從狀態機模塊收集異常信息、開始和結束等關鍵信息,利用這些信息并結合寄存器模塊的控制信息(C5),產生對應的中斷信號,并將此中斷信號伸出提供給片上系統(SoC)使用;時鐘信號產生模塊,用來產生SPIflash接口的時鐘SCLK,還接收狀態機模塊的控制信息;先進先出隊列(TX/TXFIFO):作為發送FIFO(TXFIFO)和接收FIFO(RXFIFO),發送FIFO和接收FIFO的分時切換;移位控制模塊:移位控制模塊用于發送和接收數據的串行、并行之間相互轉換;dma接口模塊:接收寄存器模塊的控制信息(C4)和先進先出隊列的狀態信號,通過判斷FIFO的狀態和控制信息,決定是否向通用DMA發起請求:若FIFO中的數據低于或者高于閾值,則發起dma請求,等待DMA返回dma響應,DMA給回響應之后,其通過總線從機接口對SPIFlash控制器進行操作,將存儲器(memory)中的數據讀出并發送到FIFO,或者從FIFO讀取數據存到存儲器。2.如權利要求1所述的自動搬運且適應器件的多線SPIFlash控制器,其特征在于:所述寄存器模塊存儲的信息可以被主線從機接口讀取,以供總線主機查詢。3.如權利要求1所述的自動搬運且適應器件的多線SPIFlash控制器,其特征在于:其控制方法如下:通過對SPIflash器件不同的操作的分析,可分為以下幾個步驟:發送命令階(即Commandtransfer),發送地址階段(即Addresstransfer),發送無效字節階段(即Dummytransfer)和發送或接收數據階段(即Datatransfer)。4.如權利要求3所述的自動搬運且適應器件的多線SPIFlash控制器,其特征在于:當需要接收或發送大量數據時,選擇使用通用DMA來搬運數據以提高傳輸效率;當接收或發送少量數據時,不使能通用DMA,直接通過CPU將發送數據寫入發送FIFO或從接收FIFO中將數據讀出來。5.一種利用權利要求1-4之一所述的自動搬運且適應器件的多線SPIFlash控制器通過通用DMA搬運數據的方法,其特征在于:包括如下步驟:將要發送的flash操作指令、地址、無效字節配置到寄存器模塊;將傳輸數據連續的放入到存儲器(memory)中;CPU通過總線配置通用DMA;CPU通過總線從機接口配置SPIflash控制...
【專利技術屬性】
技術研發人員:劉晶,張曉旭,
申請(專利權)人:杭州朔天科技有限公司,
類型:發明
國別省市:浙江,33
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。