CN102053937A - 在lpc总线中调用spi接口的闪存的方法及系统 - Google Patents
在lpc总线中调用spi接口的闪存的方法及系统 Download PDFInfo
- Publication number
- CN102053937A CN102053937A CN2009101979615A CN200910197961A CN102053937A CN 102053937 A CN102053937 A CN 102053937A CN 2009101979615 A CN2009101979615 A CN 2009101979615A CN 200910197961 A CN200910197961 A CN 200910197961A CN 102053937 A CN102053937 A CN 102053937A
- Authority
- CN
- China
- Prior art keywords
- flash
- data
- write
- read
- lpc bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明适用于计算机领域,提供了在LPC总线中调用SPI接口的闪存的方法及系统,所述方法包括:接收LPC总线传递的读取Flash或写入Flash的指令;反馈等待指令给LPC总线;当接收到的指令为读取Flash时,根据地址信息,对Flash进行数据读取,当收到的指令为写入Flash时,根据地址信息及需要写入的数据,对Flash进行数据写入;完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线,或者,在完成数据写入后,发出等待结束指令给LPC总线。这样,就成功地实现在LPC总线中,对SPI接口的Flash的读写,解决了以往在LPC总线中不能使用SPI接口的Flash的问题。
Description
技术领域
本发明属于计算机领域,尤其涉及在LPC总线中调用SPI接口的闪存的方法及系统。
背景技术
在Intel某些系列的板卡中,会采用LPC总线(Low Pin Count,少管脚数总线),并且通过LPC接口扩展各种闪存Flash,例如存储BIOS的Flash。而随着技术的发展,由于SPI(Serial Peripheral Interface,串行外围总线接口)接口的数据传输速度更快,PIN脚更少,SPI总线逐渐替代LPC总线被广泛应用,尤其是在商业计算机,笔记本电脑等领域。因此,Flash厂商也越来越倾向生产SPI接口的Flash,逐渐停止生产LPC接口的Flash。
但是,在某些特殊领域,例如工业控制领域,出于稳定性等因素的考虑,需要使用相对较早出产的芯片组,而较多老款的芯片组往往采用的是LPC总线,而没有SPI接口。因此,采用LPC总线时,较难找到配合的Flash,而现有技术也无法实现在LPC总线上调用SPI接口的Flash。
发明内容
本发明的目的在于提供一种在LPC总线中调用SPI接口的闪存的方法,旨在解决现有技术无法实现在LPC总线上调用SPI接口的Flash的问题。
本发明是这样实现的,一种在LPC总线中调用SPI接口的闪存的方法,所述方法包括以下步骤:
接收LPC总线传递的读取Flash或写入Flash的指令;
反馈等待指令给LPC总线;
当接收到的指令为读取Flash时,根据地址信息,对Flash进行数据读取,当接收到的指令为写入Flash时,根据地址信息及需要写入的数据,对Flash进行数据写入;
在完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线,或者,在完成数据写入后,发出等待结束指令给LPC总线。
本发明的另一目的在于提供一种在LPC总线中调用SPI接口的闪存的系统,所述系统包括:
指令接收单元,用于接收LPC总线传递的读取Flash或写入Flash的指令;
等待指令反馈单元,用于反馈等待指令给LPC总线;
数据处理单元,用于当接收到的指令为读取Flash时,根据地址信息,对Flash进行数据读取,当接收到的指令为写入Flash时,根据需要写入的数据及地址信息,对Flash进行数据写入;以及
等待结束指令发送单元,用于在完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线,或者,在完成数据写入后,发出等待结束指令给LPC总线。
本发明的另一目的在于提供一种可编程器件,所述可编程器件包括一在LPC总线中调用SPI接口的闪存的系统,所述系统包括:
指令接收单元,用于接收LPC总线传递的读取Flash或写入Flash的指令;
等待指令反馈单元,用于反馈等待指令给LPC总线;
数据处理单元,用于当接收到的指令为读取Flash时,根据地址信息,对Flash进行数据读取,当接收到的指令为写入Flash时,根据需要写入的数据及地址信息,对Flash进行数据写入;以及
等待结束指令发送单元,用于在完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线,或者,在完成数据写入后,发出等待结束指令给LPC总线。
本发明的另一目的在于提供一种板卡,所述板卡包括上述的可编程器件。
本发明的另一目的在于提供一种计算机,所述计算机包括上述的板卡。
在本发明的实施例中,在接收到LPC总线传递的Flash的读/写指令时,使LPC总线进行等待,当读取/写入完成后,使LPC总线结束等待,并将读取到的数据传送给LPC总线。这样,就成功地实现了在LPC总线中,对SPI接口的Flash的读写,从而解决了以往在LPC总线中不能使用SPI接口的Flash的问题。
附图说明
图1是本发明实施例提供的在LPC总线中读取SPI接口的闪存的方法流程图;
图2是本发明实施例提供的在LPC总线中写入SPI接口的闪存的方法流程图;
图3是本发明实施例提供的SPI接口的闪存接入LPC总线的示意图;
图4是本发明实施例提供的在LPC总线中调用SPI接口的闪存的系统结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明的实施例中,在接收到LPC总线传递的Flash的读/写指令时,使LPC总线进行等待,当读取/写入完成后,使LPC总线结束等待,并将读取到的数据传送给LPC总线。这样,就成功地实现了在LPC总线中,对SPI接口的Flash的读写。
图1示出了本发明实施例提供的在LPC总线中读取SPI接口的闪存的方法流程,详述如下:
在步骤S101中,接收LPC总线传递的读取Flash的指令。
在接收到读取指令的时候,获取需读数据所对应的地址信息。
在步骤S102中,反馈等待指令给LPC总线。
在上电后,LPC总线一般采用默认的读写方式,即Memory读写方式,来读取Flash。而LPC总线实现一次读操作的时间要比SPI总线实现一次读操作的时间更短。为了使SPI接口的闪存的读操作与LPC总线的读操作同步,需要反馈等待指令给LPC总线,使其处于等待状态。
在步骤S103中,根据地址信息,对Flash进行数据读取。
其中,对Flash进行数据读取的过程可以为:先输出SPI接口的Flash的片选使能信号,接着,读取SPI接口的Flash中的数据,在读数据的过程中,判断数据是否读取完毕,若未读取完,则继续读取数据,直至读完。
作为本发明的实施例,可以采用计数器来判断数据是否读取完毕,具体实施时,根据要读取的数据的比特数m,将计数器设置成m,每读取完1bit数据时,对计数器进行减1操作,并判断计数器是否为0,当计数器为0时就说明数据读取完毕。
在步骤S104中,在完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线。
图2示出了本发明实施例提供的在LPC总线中写入SPI接口的闪存的方法流程,详述如下:
在步骤S201中,接收LPC总线传递的写入Flash的指令。在接收到写入指令的时候,获取需写入的数据及所对应的地址信息。
在步骤S202中,反馈等待指令给LPC总线。与读取Flash类似,LPC总线实现一次写操作的时间要比SPI总线实现一次写操作的时间更短。为了使SPI接口的闪存的写操作与LPC总线的写操作同步,需要反馈等待指令给LPC总线,使其处于等待状态。
在步骤S203中,根据需写入的数据及所对应的地址信息,对Flash进行数据写入。
其中,对Flash进行数据写入的过程可以为:先输出SPI接口的Flash的片选使能信号,接着,将数据写入SPI接口的Flash中,在写入的过程中,判断数据是否写完,若未写完,则继续写入数据,直至写完。可以采用判断数据是否读完的方法类似判断数据是否写完,此处不再赘述。
在步骤S204中,在完成数据写入后,发出等待结束指令给LPC总线。
在实际实施过程中,可能不需要对SPI接口的Flash存储的内容进行更新,从而不需要实现对SPI接口的Flash的写入。而在多数情况下,既需要对Flash进行读取,又需要进行写入。
参阅图3,该图为本发明实施例提供的SPI接口的闪存接入LPC总线的示意图,SPI接口的闪存通过可编程器件接入LPC总线,为了便于说明,以芯片组通过LPC总线发出读取Flash、写入Flash的指令为例,SPI接口的Flash的读/写过程如下:
芯片组通过LPC总线发出读取Flash的指令时,可编程器件反馈等待指令(插入等待周期)给LPC总线,并根据地址信息,来读取SPI接口的Flash。数据读取完毕后,可编程器件发出结束等待指令给LPC总线,并将读取的数据传送给LPC总线,从而芯片组就可以利用读取的数据。
芯片组通过LPC总线发出写入Flash的指令时,通过LPC总线把地址信息,需要写入的数据传送给可编程器件。可编程器件反馈等待指令(插入等待周期)给LPC总线,并根据需要写入的数据及地址信息,来进行SPI接口的Flash的写入操作。数据写入完毕后,可编程器件发出结束等待指令给LPC总线。从而LPC总线又随时可进行下一次的Flash的读/写。
可编程器件通过调用其内置的在LPC总线中调用SPI接口的Flash的系统,实现了LPC总线中的芯片组与SPI接口的Flash之间的交互,从而使在LPC总线中可以读写SPI接口的Flash。
作为本发明的实施例,该可编程器件可以为FPGA(Field-Programmable Gate Array,现场可编程门阵列),或者CPLD (Complex Programmable Logic Device,复杂可编程逻辑器件)。在本发明的实施例中,在板卡上,可以使用该可编程器件。而装有可编程器件的板卡可作为计算机的一部分。
图4示出了本发明实施例提供的在LPC总线中调用SPI接口的闪存的系统的结构,该系统包括:指令接收单元41、等待指令反馈单元42、数据处理单元43、结束等待指令发送单元44。
该指令接收单元41接收LPC总线传递的读取Flash或写入Flash的指令,等待指令反馈单元42反馈等待指令给LPC总线,使LPC总线进入等待状态。当接收到的指令为读取Flash时,数据处理单元43根据地址信息,对Flash进行数据读取,当接收到的指令为写入Flash时,数据处理单元43根据需要写入的数据及地址信息,对Flash进行数据写入。若在完成数据读取后,等待结束指令发送单元44发出结束等待指令给LPC总线,使LPC结束等待状态,并将读取的数据传送给LPC总线,或者,在完成数据写入后,等待结束指令发送单元44发出结束等待指令给LPC总线。
在实际实施过程中,可能不需要对SPI接口的Flash存储的内容进行更新,从而不需要实现对SPI接口的Flash的写入。例如,存储较为成熟BIOS的Flash,可能不需要对SPI接口的Flash进行写入。
因此,作为本发明的实施例,该数据处理单元43可以为数据读取单元431,或者数据读取单元431与数据写入单元432的组合。
该数据读取单元431读取Flash的过程可以为:片选使能信号输出模块4311输出SPI接口的Flash的片选使能信号,读取Flash模块4312读取SPI接口的Flash中的数据,读取完整性判断模块4313判断数据是否读取完毕,若未读取完,则调用读取Flash模块4312继续读取数据,直至读取完毕。
数据写入单元432写入Flash的过程可以为:片选使能信号输出模块4321输出SPI接口的Flash的片选使能信号,写入Flash模块4322将数据写入SPI接口的Flash中,写入完整性判断模块4323判断数据是否写完,若未写完,则调用写入Flash模块4322继续写入数据,直至写入完毕。
综上所述,在接收到LPC总线传递的Flash的读/写指令时,使LPC总线进行等待,当读取/写入完成后,使LPC总线结束等待,并将读取到的数据传送给LPC总线。这样,就成功地实现了在LPC总线中,对SPI接口的Flash的读写,从而解决了以往在LPC总线中不能使用SPI接口的Flash的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种在LPC总线中调用SPI接口的闪存的方法,其特征在于,所述方法包括以下步骤:
接收LPC总线传递的读取Flash或写入Flash的指令;
反馈等待指令给LPC总线;
当接收到的指令为读取Flash时,根据地址信息,对Flash进行数据读取,当接收到的指令为写入Flash时,根据地址信息及需要写入的数据,对Flash进行数据写入;
在完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线,或者,在完成数据写入后,发出等待结束指令给LPC总线。
2.如权利要求1所述的方法,其特征在于,所述对Flash进行数据读取具体包括步骤:
输出SPI接口的Flash的片选使能信号;
读取SPI接口的Flash中的数据;
判断数据是否读取完毕,若未读取完,则继续读取数据,直至读完。
3.如权利要求1所述的方法,其特征在于,所述对Flash进行数据写入具体包括步骤:
输出SPI接口的Flash的片选使能信号;
将数据写入SPI接口的Flash中;
判断数据是否写完,若未写完,则继续写入数据,直至写完。
4.一种在LPC总线中调用SPI接口的闪存的系统,其特征在于,所述系统包括:
指令接收单元,用于接收LPC总线传递的读取Flash或写入Flash的指令;
等待指令反馈单元,用于反馈等待指令给LPC总线;
数据处理单元,用于当接收到的指令为读取Flash时,根据地址信息,对Flash进行数据读取,当接收到的指令为写入Flash时,根据需要写入的数据及地址信息,对Flash进行数据写入;以及
等待结束指令发送单元,用于在完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线,或者,在完成数据写入后,发出等待结束指令给LPC总线。
5.如权利要求4所述的系统,其特征在于,所述数据处理单元为数据读取单元,或者数据读取单元与数据写入单元的组合,
所述数据读取单元包括:
片选使能信号输出模块,用于输出SPI接口的Flash的片选使能信号;
读取Flash模块,用于读取SPI接口的Flash中的数据;以及
读取完整性判断模块,用于判断数据是否读取完毕,若未读取完,则调用读取Flash模块继续读取数据,直至读取完毕,
所述数据写入单元包括:
片选使能信号输出模块,用于输出SPI接口的Flash的片选使能信号;
写入Flash模块,用于将数据写入SPI接口的Flash中;以及
写入完整性判断模块,用于判断数据是否写完,若未写完,则调用写入Flash模块继续写入数据,直至写入完毕。
6.一种可编程器件,其特征在于,所述可编程器件包括一在LPC总线中调用SPI接口的闪存的系统,所述系统包括:
指令接收单元,用于接收LPC总线传递的读取Flash或写入Flash的指令;
等待指令反馈单元,用于反馈等待指令给LPC总线;
数据处理单元,用于当接收到的指令为读取Flash时,根据地址信息,对Flash进行数据读取,当接收到的指令为写入Flash时,根据需要写入的数据及地址信息,对Flash进行数据写入;以及
等待结束指令发送单元,用于在完成数据读取后,发出等待结束指令给LPC总线,并将读取的数据传送给LPC总线,或者,在完成数据写入后,发出等待结束指令给LPC总线。
7.如权利要求6所述的可编程器件,其特征在于,所述数据处理单元为数据读取单元,或者数据读取单元与数据写入单元的组合,
所述数据读取单元包括:
片选使能信号输出模块,用于输出SPI接口的Flash的片选使能信号;
读取Flash模块,用于读取SPI接口的Flash中的数据;以及
读取完整性判断模块,用于判断数据是否读取完毕,若未读取完,则调用读取Flash模块继续读取数据,直至读取完毕,
所述数据写入单元包括:
片选使能信号输出模块,用于输出SPI接口的Flash的片选使能信号;
写入Flash模块,用于将数据写入SPI接口的Flash中;以及
写入完整性判断模块,用于判断数据是否写完,若未写完,则调用写入Flash模块继续写入数据,直至写入完毕。
8.如权利要求6所述的可编程器件,其特征在于,所述可编程器件为FPGA或者CPLD。
9.一种板卡,其特征在于,所述板卡包括权利要求6至8任一项所述的可编程器件。
10.一种计算机,其特征在于,所述计算机包括权利要求9所述的板卡。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101979615A CN102053937A (zh) | 2009-10-30 | 2009-10-30 | 在lpc总线中调用spi接口的闪存的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101979615A CN102053937A (zh) | 2009-10-30 | 2009-10-30 | 在lpc总线中调用spi接口的闪存的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102053937A true CN102053937A (zh) | 2011-05-11 |
Family
ID=43958279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101979615A Pending CN102053937A (zh) | 2009-10-30 | 2009-10-30 | 在lpc总线中调用spi接口的闪存的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102053937A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662905A (zh) * | 2012-05-03 | 2012-09-12 | 天津市英贝特航天科技有限公司 | 一种lpc总线与nor flash bios芯片连接电路 |
CN105320637A (zh) * | 2015-10-23 | 2016-02-10 | 西安中科晶像光电科技有限公司 | Flash数据读取电路 |
CN109669729A (zh) * | 2018-12-26 | 2019-04-23 | 杭州迪普科技股份有限公司 | 一种处理器的启动引导方法 |
CN113409861A (zh) * | 2021-06-28 | 2021-09-17 | 芯天下技术股份有限公司 | 阈值电压的获取系统、传递方法、装置、设备及存储介质 |
CN113419985A (zh) * | 2021-06-15 | 2021-09-21 | 珠海市一微半导体有限公司 | Spi系统自动读取数据的控制方法及spi系统 |
CN114265799A (zh) * | 2021-12-28 | 2022-04-01 | 南昌勤胜电子科技有限公司 | 基于cpld的spi读写系统及服务器 |
-
2009
- 2009-10-30 CN CN2009101979615A patent/CN102053937A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662905A (zh) * | 2012-05-03 | 2012-09-12 | 天津市英贝特航天科技有限公司 | 一种lpc总线与nor flash bios芯片连接电路 |
CN102662905B (zh) * | 2012-05-03 | 2015-02-11 | 天津市英贝特航天科技有限公司 | 一种lpc总线与nor flash bios芯片连接电路 |
CN105320637A (zh) * | 2015-10-23 | 2016-02-10 | 西安中科晶像光电科技有限公司 | Flash数据读取电路 |
CN109669729A (zh) * | 2018-12-26 | 2019-04-23 | 杭州迪普科技股份有限公司 | 一种处理器的启动引导方法 |
CN113419985A (zh) * | 2021-06-15 | 2021-09-21 | 珠海市一微半导体有限公司 | Spi系统自动读取数据的控制方法及spi系统 |
CN113409861A (zh) * | 2021-06-28 | 2021-09-17 | 芯天下技术股份有限公司 | 阈值电压的获取系统、传递方法、装置、设备及存储介质 |
CN113409861B (zh) * | 2021-06-28 | 2024-02-02 | 芯天下技术股份有限公司 | 阈值电压的获取系统、传递方法、装置、设备及存储介质 |
CN114265799A (zh) * | 2021-12-28 | 2022-04-01 | 南昌勤胜电子科技有限公司 | 基于cpld的spi读写系统及服务器 |
CN114265799B (zh) * | 2021-12-28 | 2024-03-26 | 南昌勤胜电子科技有限公司 | 基于cpld的spi读写系统及服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10108373B2 (en) | Host, system, and methods for transmitting commands to non-volatile memory card | |
US9619175B2 (en) | Embedded multimedia card (eMMC), host for controlling the eMMC, and methods of operating the eMMC and the host | |
US9792072B2 (en) | Embedded multimedia card (eMMC), host controlling eMMC, and method operating eMMC system | |
CN101266829B (zh) | 存储卡、包含存储卡的存储系统及存储卡的操作方法 | |
US7802061B2 (en) | Command-based control of NAND flash memory | |
CN102053937A (zh) | 在lpc总线中调用spi接口的闪存的方法及系统 | |
US20110231622A1 (en) | Storage apparatus and storage system | |
US8775760B2 (en) | Modifying a host interface setting for a non-volatile memory module | |
US8266371B2 (en) | Non-volatile storage device, host device, non-volatile storage system, data recording method, and program | |
US20160062659A1 (en) | Virtual memory module | |
US20140019671A1 (en) | Flash Memory Controllers and Error Detection Methods | |
CN102063939B (zh) | 一种电可擦除可编程只读存储器的实现方法和装置 | |
CN101814058A (zh) | 通用存储装置 | |
US8812756B2 (en) | Method of dispatching and transmitting data streams, memory controller and storage apparatus | |
US8539117B2 (en) | State change in systems having devices coupled in a chained configuration | |
CN101359321A (zh) | 一种实现处理器相互通讯的方法及装置 | |
US9274860B2 (en) | Multi-processor device and inter-process communication method thereof | |
CN101354657A (zh) | 现场可编程门阵列的加载方法及加载电路 | |
US6822902B2 (en) | Apparatus and method for interfacing between modem and memory in mobile station | |
US8151144B2 (en) | Memory card, nonvolatile memory, controller, and method for managing writing errors for nonvolatile memories | |
US9037842B2 (en) | Booting in systems having devices coupled in a chained configuration | |
TWI430104B (zh) | 資料串分派與傳送方法、記憶體控制器與記憶體儲存裝置 | |
CN114141291A (zh) | 存储器、存储器控制方法和系统 | |
CN102375698B (zh) | 数据串分派与传送方法、存储器控制器与存储器储存装置 | |
CN102591738A (zh) | 数据管理方法、存储器控制器与嵌入式存储器储存装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110511 |