一种防芯片SPI与NAND管脚冲突的方法和装置与流程
未命名
07-20
阅读:174
评论:0
一种防芯片spi与nand管脚冲突的方法和装置
技术领域
1.本技术涉及工业网络交换技术领域,特别是涉及一种防芯片spi与nand管脚冲突的方法和装置。
背景技术:
2.随着工业网络交换技术的发展,芯片在交换机方案中可通过spi(串行外设接口,serial peripheral interface)访问spi存储器,也可通过nand通道访问nand存储设备。然而,目前芯片中的共用管脚每次只能访问spi或nand中的一个。由于spi与nand管脚之间存在冲突,导致无法实现spi与nand之间同时共存。
3.因此,亟需提供一种技术方案解决上述技术问题。
技术实现要素:
4.基于此,有必要针对上述技术问题,提供一种能够实现spi与nand之间同时共存的一种防芯片spi与nand管脚冲突的方法和装置。
5.一种防芯片spi与nand管脚冲突的方法,所述方法包括:
6.当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果;
7.当所述判断结果为是时,向fpga发送使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至spi2通道;
8.当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道;其中,所述共用管脚的通道包括:spi0通道和所述nand通道,所述当前spi通道用于访问spi存储器,所述nand通道用于访问nand存储器。
9.在其中一个实施例中,所述方法还包括:
10.当所述判断结果为否时,向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。
11.在其中一个实施例中,所述spi_en管脚被触发至预设电位包括:
12.根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。
13.在其中一个实施例中,所述当前管脚通道为:所述spi0通道或所述nand通道;其中,仅当所述当前spi通道为所述spi2通道时,所述当前管脚通道为所述nand通道。
14.在其中一个实施例中,所述方法还包括:
15.当所述目标芯片启动u-boot时,所述目标芯片依次通过所述spi0通道和所述fpga访问所述spi存储器。
16.一种防芯片spi与nand管脚冲突的装置,所述装置包括:
17.判断模块,用于当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果;
18.第一控制模块,用于当所述判断结果为是时,向fpga发送使能信号,以使所述fpga
将所述目标芯片的当前spi通道切换至spi2通道;
19.运行模块,用于当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道;其中,所述共用管脚的通道包括:spi0通道和所述nand通道,所述当前spi通道用于访问spi存储器,所述nand通道用于访问nand存储器。
20.在其中一个实施例中,所述装置还包括:
21.第二控制模块,用于当所述判断结果为否时,向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。
22.在其中一个实施例中,所述spi_en管脚被触发至预设电位包括:
23.根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。
24.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的一种防芯片spi与nand管脚冲突的方法的步骤。
25.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中的一种防芯片spi与nand管脚冲突的方法的步骤。
26.上述一种防芯片spi与nand管脚冲突的方法和装置,通过在芯片外部增加fpga实现spi通道的来回切换,进而达到了spi和nand存储共存的目的。
附图说明
27.图1为本发明提供的一种防芯片spi与nand管脚冲突的方法的实施例的流程示意图;
28.图2为本发明提供的一种防芯片spi与nand管脚冲突的方法的实施例中的第一原理示意图;
29.图3为本发明提供的一种防芯片spi与nand管脚冲突的方法的实施例中的第二原理示意图;
30.图4为本发明提供的一种防芯片spi与nand管脚冲突的方法的实施例中的第三原理示意图;
31.图5为本发明提供的一种防芯片spi与nand管脚冲突的装置的实施例的结构示意图;
32.图6为本发明提供的计算机设备的实施例的内部结构图。
具体实施方式
33.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
34.图1示出了本发明提供的一种防芯片spi与nand管脚冲突的方法的实施例的流程图。如图1所示,包括以下步骤:
35.步骤110:当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果。
36.其中,
①
目标芯片在本实施例中默认为cpu。
②
目标芯片中的linux启动顺序为:先启动u-boot,后启动内核。
③
spi_en管脚能够用于切换spi通道,预设电位为spi_en管脚被拉低,具体为:将spi0通道切换至spi2通道;而spi_en管脚拉高表示将spi2通道切换至spi0通道。
④
目标芯片启动内核表示cpu已经启动一段时间,此时cpu需要同时使用spi存储器和nand存储器。
⑤
目标芯片在u-boot阶段为初始化阶段,此阶段无需进行切换,cpu的共用管脚的通道为spi0。
37.此处可以理解的是,预设电位也可以为spi_en管脚被拉高,即spi_en管脚被拉高时将spi0通道切换至spi2通道,而spi_en管脚被拉低时将spi2通道切换至spi0通道。
38.具体地,当目标芯片处于启动内核阶段时,目标芯片判断目标芯片的spi_en管脚是否被拉低,得到判断结果。
39.步骤120:当所述判断结果为是时,向fpga发送使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至spi2通道。
40.其中,
①
fpga为:现场可编程逻辑阵列,相当于一个带有切换功能的开关,能够控制spi通道的切换。
②
使能信号用于:控制fpga将目标芯片的当前spi通道切换至spi2通道。
③
当前spi通道为:目标芯片在当前时刻所使用的spi通道;其类型包括:spi0通道和spi2通道。
41.具体地,当目标芯片的spi_en管被拉低,目标芯片向fpga发送使能信号,以使fpga将目标芯片的当前spi通道切换从默认的spi0通道切换至spi2通道。
42.步骤130:当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道。
43.其中,
①
共用管脚的通道包括:spi0通道和nand通道。
②
当前spi通道用于访问spi存储器。
③
nand通道用于访问nand存储器。
44.具体地,当目标芯片的当前spi通道切换至spi2通道时,目标芯片将目标芯片的共用管脚的当前管脚通道从spi0通道切换至nand通道。
45.需要说明的是,
①
如图2所示,目标芯片(cpu)包含三个管脚,具体为:共用管脚、spi2管脚和spi_en管脚。共用管脚的spi0通道连接fpga,共用管脚的nand通道连接nand flash(nand存储器),spi2管脚连接fpga,spi_en管脚连接fpga,fpga连接spi nor flash(spi存储器)。
②
如图3所示,当cpu刚启动时(u-boot阶段),共用管脚初始化为spi0通道,此时图中的通道顺序为:cpu
→
spi0
→
fpga
→
spi nor flash。
③
如图4所示,当cpu启动一段时间后(启动内核阶段),此时需要同时使用spi nor flash跟nand flash,所以需要进行切换。切换后cpu能使用nand flash跟spi nor flash。由于需要使用到nand flash,所以此时需要进行spi通道切换(spi0通道切换到spi2通道),通过spi_en管脚实现的切换功能spi_en低电平到高电平完成切换。切换后cpu共用管脚初始化为nand功能。此时通道是:cpu
→
spi2
→
fpga
→
spi nor flash。此后只要cpu不下电,通道一直是cpu
→
spi2
→
fpga
→
spi nor flash。
46.上述防芯片spi与nand管脚冲突的方法中,通过在芯片外部增加fpga实现spi通道的来回切换,进而达到了spi和nand存储共存的目的。
47.较优地,当所述判断结果为否时,向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。
48.其中,去使能信号为:控制fpga将目标芯片的当前spi通道切换至spi0通道的信号。
49.较优地,所述spi_en管脚被触发至预设电位包括:
50.根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。
51.其中,
①
外部软件为:与目标芯片所连接的外部控制器中的软件。
②
目标控制指令为:拉低spi_en管脚的控制指令。
52.具体地,当目标芯片接收到外部软件发送的目标控制指令时,目标芯片根据该目标控制指令,将spi_en管脚进行拉低。
53.上述较优的技术方案中,进一步通过控制spi_en管脚,实现对spi通道的自由切换。
54.较优地,所述当前管脚通道为:所述spi0通道或所述nand通道;其中,仅当所述当前spi通道为所述spi2通道时,所述当前管脚通道为所述nand通道。
55.其中,共用管脚通道每次仅能选择nand通道和spi0通道中的一个,因此需要将spi0通道切换为spi2通道,依次实现spi通道和nand通道的共存。
56.较优地,还包括:
57.当所述目标芯片启动u-boot时,所述目标芯片依次通过所述spi0通道和所述fpga访问所述spi存储器。
58.具体地,当cpu刚启动时(u-boot阶段),共用管脚初始化为spi0通道,此时图中的通道顺序为:cpu
→
spi0
→
fpga
→
spi nor flash。当cpu启动一段时间后(启动内核阶段),此时通道是:cpu
→
spi2
→
fpga
→
spi nor flash。
59.应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
60.在一个实施例中,如图5所示,提供了一种防芯片spi与nand管脚冲突的装置200,包括:判断模块210、第一控制模块220和运行模块230,其中:
61.判断模块210,用于当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果;
62.第一控制模块220,用于当所述判断结果为是时,向fpga发送使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至spi2通道;
63.运行模块230,用于当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道;其中,所述共用管脚的通道包括:spi0通道和所述nand通道,所述当前spi通道用于访问spi存储器,所述nand通道用于访问nand存储器。
64.上述防芯片spi与nand管脚冲突的装置中,通过在芯片外部增加fpga实现spi通道的来回切换,进而达到了spi和nand存储共存的目的。
65.较优地,所述装置还包括:
66.第二控制模块,用于当所述判断结果为否时,向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。
67.较优地,所述spi_en管脚被触发至预设电位包括:
68.根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。
69.较优地,所述当前管脚通道为:所述spi0通道或所述nand通道;其中,仅当所述当前spi通道为所述spi2通道时,所述当前管脚通道为所述nand通道。
70.较优地,还包括:
71.第二控制模块,当所述目标芯片启动u-boot时,所述目标芯片依次通过所述spi0通道和所述fpga访问所述spi存储器。
72.关于防芯片spi与nand管脚冲突的装置的具体限定可以参见上文中对于防芯片spi与nand管脚冲突的方法的限定,在此不再赘述。上述防芯片spi与nand管脚冲突的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
73.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种防芯片spi与nand管脚冲突的方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
74.本领域技术人员可以理解,图6中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
75.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
76.当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果;
77.当所述判断结果为是时,向fpga发送使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至spi2通道;
78.当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道;其中,所述共用管脚的通道包括:spi0通道和所述nand通道,所述当前spi通道用于访问spi存储器,所述nand通道用于访问nand存储器。
79.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
80.当所述判断结果为否时,向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。
81.在一个实施例中,所述spi_en管脚被触发至预设电位包括:
82.根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。
83.在一个实施例中,所述当前管脚通道为:所述spi0通道或所述nand通道;其中,仅当所述当前spi通道为所述spi2通道时,所述当前管脚通道为所述nand通道。
84.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
85.当所述目标芯片启动u-boot时,所述目标芯片依次通过所述spi0通道和所述fpga访问所述spi存储器。
86.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
87.当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果;
88.当所述判断结果为是时,向fpga发送使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至spi2通道;
89.当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道;其中,所述共用管脚的通道包括:spi0通道和所述nand通道,所述当前spi通道用于访问spi存储器,所述nand通道用于访问nand存储器。
90.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
91.当所述判断结果为否时,向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。
92.在一个实施例中,所述spi_en管脚被触发至预设电位包括:
93.根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。
94.在一个实施例中,所述当前管脚通道为:所述spi0通道或所述nand通道;其中,仅当所述当前spi通道为所述spi2通道时,所述当前管脚通道为所述nand通道。
95.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
96.当所述目标芯片启动u-boot时,所述目标芯片依次通过所述spi0通道和所述fpga访问所述spi存储器。
97.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
98.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
99.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并
不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
技术特征:
1.一种防芯片spi与nand管脚冲突的方法,其特征在于,所述方法包括:当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果;当所述判断结果为是时,向fpga发送使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至spi2通道;当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道;其中,所述共用管脚的通道包括:spi0通道和所述nand通道,所述当前spi通道用于访问spi存储器,所述nand通道用于访问nand存储器。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述判断结果为否时,向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。3.根据权利要求1所述的方法,其特征在于,所述spi_en管脚被触发至预设电位包括:根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。4.根据权利要求1-3任一项所述的方法,其特征在于,所述当前管脚通道为:所述spi0通道或所述nand通道;其中,仅当所述当前spi通道为所述spi2通道时,所述当前管脚通道为所述nand通道。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述目标芯片启动u-boot时,所述目标芯片依次通过所述spi0通道和所述fpga访问所述spi存储器。6.一种防芯片spi与nand管脚冲突的装置,其特征在于,所述装置包括:判断模块,用于当目标芯片启动内核时,判断所述目标芯片的spi_en管脚是否被触发至预设电位,得到判断结果;第一控制模块,用于当所述判断结果为是时,向fpga发送使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至spi2通道;运行模块,用于当所述目标芯片的当前spi通道切换至所述spi2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至nand通道;其中,所述共用管脚的通道包括:spi0通道和所述nand通道,所述当前spi通道用于访问spi存储器,所述nand通道用于访问nand存储器。7.根据权利要求6所述的装置,其特征在于,所述装置还包括:第二控制模块,用于当所述判断结果为否时,控制所述目标芯片向所述fpga发送去使能信号,以使所述fpga将所述目标芯片的当前spi通道切换至所述spi0通道。8.根据权利要求6所述的装置,其特征在于,所述spi_en管脚被触发至预设电位包括:根据接收到的外部软件发送的所述目标控制指令拉低所述spi_en管脚。9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
技术总结
本申请涉及一种防芯片SPI与NAND管脚冲突的方法和装置。所述方法包括:当目标芯片启动内核时,判断所述目标芯片的SPI_EN管脚是否被触发至预设电位,得到判断结果;当所述判断结果为是时,向FPGA发送使能信号,以使所述FPGA将所述目标芯片的当前SPI通道切换至SPI2通道;当所述目标芯片的当前SPI通道切换至所述SPI2通道时,将所述目标芯片的共用管脚的当前管脚通道切换至NAND通道;其中,所述共用管脚的通道包括:SPI0通道和所述NAND通道,所述当前SPI通道用于访问SPI存储器,所述NAND通道用于访问NAND存储器。采用本方法能够实现SPI和NAND存储共存。NAND存储共存。NAND存储共存。
技术研发人员:陈建聪
受保护的技术使用者:北京东土科技股份有限公司
技术研发日:2022.12.29
技术公布日:2023/7/19
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
