一种flash译码电路和flash译码方法与流程

文档序号:16744704发布日期:2019-01-28 13:24阅读:284来源:国知局
一种flash译码电路和flash译码方法与流程

本发明属于数字电路技术领域,具体涉及一种flash译码电路和flash译码方法。



背景技术:

flash作为一种存储介质,掉电后数据不丢失,常用于存贮重要的数据,例如存贮cpu的关键配置信息,用于cpu启动,或者存贮某些数据,保证cpu掉电后数据不丢失。

不同的客户,对flash空间需求不同,考虑到客户使用习惯的差异,向不同客户提供差异化的flash访问方式,例如系统总线master访问flash读写数据,或者cpu从flash启动。

如果从master访问,相当于cpu或者dma直接读取flash数据,或者cpu从sram区域启动,读取sram存贮的启动信息,需要先验证地址空间是否可用,并且分配访问权限。

flash物理空间是确定的,但开放给客户可使用的flash空间可以做到差异化,例如选择从flash的sram区域启动,或者从infopage区域启动,并且这种访问flash的选择可以由客户指定或修改。

由于在厂生产良率问题,某一段flash内部的地址空间可能存在瑕疵,可把该地址空间映射到另一段可用的地址空间,从而保证可使用的flash空间的连续性,并且提高芯片良率。



技术实现要素:

本发明为了解决现有技术存在的问题,提出了一种flash译码电路和flash译码方法。

为了实现上述目的,本发明包括了以下技术方案:

一种flash译码电路,包括:master访问电路、flash启动电路、infopage启动电路、sram启动电路、flash访问电路。

master访问电路,选择master访问指定的flash地址空间,产生master访问flash片选信号,发送至flash访问电路;flash启动电路,选择cpu从指定的flash地址空间启动,产生cpu从flash启动的片选信号,发送至flash访问电路;infopage启动电路,选择cpu从指定的infopage地址空间启动,产生cpu从infopage启动的片选信号,发送至flash访问电路;sram启动电路,选择cpu从指定的sram地址空间启动,产生cpu从sram启动的片选信号,发送至flash访问电路;flash访问电路,选择master访问flash或cpu从flash、infopage、sram任一启动,产生访问flash信号,发送至指定flash地址空间。

进一步的,master访问电路,包括:与门电路和或门电路。

与门电路,输入flash空间的地址段编码和相应的地址段使能信号,输出master访问flash相应的地址空间信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入master访问flash不同的地址空间信号,输出master访问flash信号,若输入信号均无效,则输出无效信号,至flash访问电路。

进一步的,flash启动电路,包括:与门电路和或门电路。

与门电路,输入flash空间的地址段编码和相应的地址段使能信号、cpu访问flash信号和cpu从flash启动的信号,输出cpu从flash相应的地址空间启动的信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入cpu从flash不同的地址空间启动的信号,输出cpu从flash启动的信号,若输入信号均无效,则输出无效信号,至flash访问电路。

进一步的,infopage启动电路,包括:与门电路和或门电路。

与门电路,输入flash空间infopage区域的地址段编码和相应的地址段使能信号、cpu访问infopage信号和cpu从infopage启动的信号、infopage译码片选信号,输出cpu从infopage相应的地址空间启动的信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入cpu从infopage不同的地址空间启动的信号,输出cpu从infopage启动的信号,若输入信号均无效,则输出无效信号,至flash访问电路。

进一步的,sram启动电路,包括:与门电路和或门电路。

与门电路,输入flash空间sram的地址段编码和相应的地址段使能信号、cpu访问sram信号和cpu从sram启动的信号、sram译码片选信号,输出cpu从sram相应的地址空间启动的信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入cpu从sram不同的地址空间启动的信号,输出cpu从sram启动的信号,若输入信号均无效,则输出无效信号,至flash访问电路。

进一步的,与门电路,包括:32kb与门、48kb与门、64kb与门。

32kb与门,输入地址段编码为地址连续、空间大小为32kb的地址段编码,若该32kb地址段空间可以访问,则该输入信号有效;48kb与门,输入地址段编码为地址连续、空间大小为48kb的地址段编码,若该32kb地址段空间可以访问,则该输入信号有效;64kb与门,输入地址段编码为地址连续、空间大小为64kb的地址段编码,若该32kb地址段空间可以访问,则该输入信号有效。

进一步的,flash访问电路,包括:或门电路,若master访问flash信号、cpu从flash启动的信号、cpu从infopage启动的信号、cpu从sram启动的信号均无效,则输出无效信号,否则输出有效的访问flash信号。

一种flash译码方法,包括:指定flash地址空间,或flash的infopage区域,或flash的sram区域,若该地址空间可用,则选择master访问flash地址空间,或cpu从flash启动,或cpu从infopage区域启动,或cpu从sram区域启动,产生访问flash信号。

进一步的,指定flash地址空间,包括:选择flash地址空间,将地址段编码和相应的地址段使能信号做与运算,若编码和使能信号均有效,则得到该地址空间可以访问的有效信号。

进一步的,指定flash的infopage区域,包括:选择flash的infopage区域,将地址段编码和相应的地址段使能信号做与运算,若编码和使能信号均有效,则得到该地址空间可以访问的有效信号。

进一步的,指定flash的sram区域,包括:选择flash的sram区域,将地址段编码和相应的地址段使能信号做与运算,若编码和使能信号均有效,则得到该地址空间可以访问的有效信号。

进一步的,地址段根据实际使用需要增加或减少它的数量,为地址连续、空间大小为32kb或48kb或64kb的地址空间。

进一步的,选择master访问flash地址空间,包括:将所有访问flash地址空间的信号做或运算,若所有地址空间均无法访问,得到flash地址空间可以访问的无效信号,否则得到有效信号;将master访问flash的信号置为有效,将cpu访问flash的信号置为无效。

进一步的,选择cpu从flash启动,包括:将每个访问flash地址空间的信号和cpu访问flash信号、cpu从flash启动的信号做与运算,若所有信号均有效,则得到cpu可以从该地址空间启动的有效信号;将所有cpu从flash地址空间启动的信号做或运算,若所有地址空间均无法访问,得到cpu可以从flash地址空间启动的无效信号,否则得到有效信号;将master访问flash的信号置为无效,将cpu访问flash的信号置为有效,将cpu从flash启动的信号置为有效。

进一步的,选择cpu从infopage区域启动,包括:将每个访问infopage区域的信号和cpu访问infopage信号、cpu从infopage启动的信号、infopage片选信号做与运算,若所有信号均有效,则得到cpu可以从该地址空间启动的有效信号;将所有cpu从infopage区域启动的信号做或运算,若所有地址空间均无法访问,得到cpu可以从infopage区域启动的无效信号,否则得到有效信号;将master访问flash的信号置为无效,将cpu访问infopage区域的信号置为有效,将cpu从infopage区域启动的信号置为有效,将infopage片选信号置为有效。

进一步的,选择cpu从sram区域启动,包括:将每个访问sram区域的信号和cpu访问sram信号、cpu从sram启动的信号、sram片选信号做与运算,若所有信号均有效,则得到cpu可以从该地址空间启动的有效信号;将所有cpu从sram区域启动的信号做或运算,若所有地址空间均无法访问,得到cpu可以从sram区域启动的无效信号,否则得到有效信号;将master访问flash的信号置为无效,将cpu访问sram区域的信号置为有效,将cpu从sram区域启动的信号置为有效,将sram片选信号置为有效。

进一步的,产生访问flash信号,包括:对master访问flash的信号、cpu访问flash的信号、cpu访问infopage区域的信号、cpu访问sram区域的信号做4选1运算,同一时间只将1个信号置为有效。

本发明用于确定flash物理空间,向客户提供差异化flash访问;只要实际访问的空间不超过flash有效物理地址空间大小,可以进行地址空间组合;当某段地址空间出现瑕疵时,通过地址映射转移到另一段空间;确保访问flash空间的连续性,提高芯片良率;在访问flash地址空间时检测可用性,保证访问成功。

附图说明

图1表示译码过程,图2表示地址映射原理,图3表示master访问flash,图4表示

cpu从flash启动,图5表示cpu从infopage启动,图6表示cpu从sram启动。

具体实施方式

以下结合附图对本发明的技术方案做具体的说明:

一种flash译码电路,如图1所示,包括:

master访问电路,选择master访问指定的flash地址空间,产生master访问flash片选信号,发送至flash访问电路。

flash启动电路,选择cpu从指定的flash地址空间启动,产生cpu从flash启动的片选信号,发送至flash访问电路。

infopage启动电路,选择cpu从指定的infopage地址空间启动,产生cpu从infopage启动的片选信号,发送至flash访问电路。

sram启动电路,选择cpu从指定的sram地址空间启动,产生cpu从sram启动的片选信号,发送至flash访问电路。

flash访问电路,选择master访问flash或cpu从flash、infopage、sram任一启动,产生访问flash信号,发送至指定flash地址空间。

master访问电路,如图3所示,包括:

与门电路,输入flash空间的地址段编码和相应的地址段使能信号,输出master访问flash相应的地址空间信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入master访问flash不同的地址空间信号,输出master访问flash信号,若输入信号均无效,则输出无效信号,至flash访问电路。

flash启动电路,如图4所示,包括:

与门电路,输入flash空间的地址段编码和相应的地址段使能信号、cpu访问flash信号和cpu从flash启动的信号,输出cpu从flash相应的地址空间启动的信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入cpu从flash不同的地址空间启动的信号,输出cpu从flash启动的信号,若输入信号均无效,则输出无效信号,至flash访问电路。

infopage启动电路,如图5所示,包括:

与门电路,输入flash空间infopage区域的地址段编码和相应的地址段使能信号、cpu访问infopage信号和cpu从infopage启动的信号、infopage译码片选信号,输出cpu从infopage相应的地址空间启动的信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入cpu从infopage不同的地址空间启动的信号,输出cpu从infopage启动的信号,若输入信号均无效,则输出无效信号,至flash访问电路。

sram启动电路,如图6所示,包括:。

与门电路,输入flash空间sram的地址段编码和相应的地址段使能信号、cpu访问sram信号和cpu从sram启动的信号、sram译码片选信号,输出cpu从sram相应的地址空间启动的信号,至或门电路,若输入信号均有效,则输出有效信号;或门电路,输入cpu从sram不同的地址空间启动的信号,输出cpu从sram启动的信号,若输入信号均无效,则输出无效信号,至flash访问电路。

与门电路,包括:

32kb与门,输入地址段编码为地址连续、空间大小为32kb的地址段编码,若该32kb地址段空间可以访问,则该输入信号有效;48kb与门,输入地址段编码为地址连续、空间大小为48kb的地址段编码,若该32kb地址段空间可以访问,则该输入信号有效;64kb与门,输入地址段编码为地址连续、空间大小为64kb的地址段编码,若该32kb地址段空间可以访问,则该输入信号有效。

flash访问电路,如图2所示,包括:

或门电路,若master访问flash信号、cpu从flash启动的信号、cpu从infopage启动的信号、cpu从sram启动的信号均无效,则输出无效信号,否则输出有效的访问flash信号,实现地址映射。

一种flash译码方法,如图2所示,指定flash地址空间,或flash的infopage区域,或flash的sram区域,若该地址空间可用,则选择master访问flash地址空间,或cpu从flash启动,或cpu从infopage区域启动,或cpu从sram区域启动,产生访问flash信号,实现地址映射。

指定flash地址空间,如图3所示,选择flash地址空间,将地址段编码和相应的地址段使能信号做与运算,若编码和使能信号均有效,则得到该地址空间可以访问的有效信号。

指定flash的infopage区域,如图5所示,选择flash的infopage区域,将地址段编码和相应的地址段使能信号做与运算,若编码和使能信号均有效,则得到该地址空间可以访问的有效信号。

指定flash的sram区域,如图6所示,选择flash的sram区域,将地址段编码和相应的地址段使能信号做与运算,若编码和使能信号均有效,则得到该地址空间可以访问的有效信号。

地址段根据实际使用需要增加或减少它的数量,为地址连续、空间大小为32kb或48kb或64kb的地址空间。

选择master访问flash地址空间,如图3所示,将所有访问flash地址空间的信号做或运算,若所有地址空间均无法访问,得到flash地址空间可以访问的无效信号,否则得到有效信号;将master访问flash的信号置为有效,将cpu访问flash的信号置为无效。

选择cpu从flash启动,如图4所示,将每个访问flash地址空间的信号和cpu访问flash信号、cpu从flash启动的信号做与运算,若所有信号均有效,则得到cpu可以从该地址空间启动的有效信号;将所有cpu从flash地址空间启动的信号做或运算,若所有地址空间均无法访问,得到cpu可以从flash地址空间启动的无效信号,否则得到有效信号;将master访问flash的信号置为无效,将cpu访问flash的信号置为有效,将cpu从flash启动的信号置为有效。

选择cpu从infopage区域启动,如图5所示,将每个访问infopage区域的信号和cpu访问infopage信号、cpu从infopage启动的信号、infopage片选信号做与运算,若所有信号均有效,则得到cpu可以从该地址空间启动的有效信号;将所有cpu从infopage区域启动的信号做或运算,若所有地址空间均无法访问,得到cpu可以从infopage区域启动的无效信号,否则得到有效信号;将master访问flash的信号置为无效,将cpu访问infopage区域的信号置为有效,将cpu从infopage区域启动的信号置为有效,将infopage片选信号置为有效。

选择cpu从sram区域启动,如图6所示,将每个访问sram区域的信号和cpu访问sram信号、cpu从sram启动的信号、sram片选信号做与运算,若所有信号均有效,则得到cpu可以从该地址空间启动的有效信号;将所有cpu从sram区域启动的信号做或运算,若所有地址空间均无法访问,得到cpu可以从sram区域启动的无效信号,否则得到有效信号;将master访问flash的信号置为无效,将cpu访问sram区域的信号置为有效,将cpu从sram区域启动的信号置为有效,将sram片选信号置为有效。

产生访问flash信号,如图2所示,对master访问flash的信号、cpu访问flash的信号、cpu访问infopage区域的信号、cpu访问sram区域的信号做4选1运算,同一时间只将1个信号置为有效,实现地址映射。

上述作为本发明的实施例,并不限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1