CN107085560A - 一种emif接口与ahb/apb时序桥接电路及其控制方法 - Google Patents

一种emif接口与ahb/apb时序桥接电路及其控制方法 Download PDF

Info

Publication number
CN107085560A
CN107085560A CN201710300299.6A CN201710300299A CN107085560A CN 107085560 A CN107085560 A CN 107085560A CN 201710300299 A CN201710300299 A CN 201710300299A CN 107085560 A CN107085560 A CN 107085560A
Authority
CN
China
Prior art keywords
apb
ahb
address
data
sequential
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.)
Granted
Application number
CN201710300299.6A
Other languages
English (en)
Other versions
CN107085560B (zh
Inventor
张海金
张洵颖
张丽娜
罗敏涛
刘思源
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Microelectronics Technology Institute
Original Assignee
Xian Microelectronics Technology Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xian Microelectronics Technology Institute filed Critical Xian Microelectronics Technology Institute
Priority to CN201710300299.6A priority Critical patent/CN107085560B/zh
Publication of CN107085560A publication Critical patent/CN107085560A/zh
Application granted granted Critical
Publication of CN107085560B publication Critical patent/CN107085560B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

本发明公开了一种EMIF接口与AHB/APB时序桥接电路及其控制方法,所述桥接电路通过EMIF接口与外部DSP连接,桥接电路包括:DSP信号同步模块、DSP操作检测模块、地址映射控制器、数据位宽匹配器、AHB/APB时序生成状态机及配置寄存器。所述桥接电路集成于SoC片内,通过EMIF接口与外部DSP连接,完成对DSP访问时序的解析、拼接以及转换功能,最终实现对于片内资源的高效操作。所述桥接电路最多支持DSP对16路AHB/APB从机的访问控制。

Description

一种EMIF接口与AHB/APB时序桥接电路及其控制方法
技术领域
本发明属于数字集成电路领域,涉及一种EMIF接口与AHB/APB时序桥接电路及其控制方法,该电路用于具有EMIF控制接口的SoC/嵌入式处理器设计领域。
背景技术
片上系统具有小型化、低功耗、接口丰富的特点,近年来逐渐成为计算机系统控制核心,然而由于其多以RISC处理器为核心,运算能力有限;在计算机系统中,为了实现高效的运算能力,常使用DSP+SoC的双核系统。SoC负责通信、控制功能,并将通信接口收发数据发送给DSP,而DSP与SoC之间可通过双端口缓冲区进行数据通信以进行数据运算。然而,在这种通信方式下,一方面外设数据需要经过两次数据搬运,实时性差;另一方面,数据搬运过程中SoC 与DSP均被占用,导致执行效率受到影响。
基于该问题,本发明提出一种由DSP通过EMIF接口直接访问SoC片上资源的方法。所述SoC片上互连总线为32位AMBA总线,所述EMIF接口为16 位的总线接口。因此本发明主要涉及16位的EMIF接口向32位AMBA总线的时序转换及控制功能。在专利《一种DCR总线和APB总线之间的总线桥》(申请号:201410490661.7)中,描述了一种由DCR向APB总线转换的桥接电路;在专利《DSP的EMIF读写时序与FPGA的AVALON读写时序的转换方法》(申请号:201510188013.0)中,则描述了DSP的EMIF读写时序与FPGA的AVALON 总线时序之间的转换方法,而关于DSP的EMIF时序与AMBA总线的AHB/APB 时序的转换方法目前则尚无相关研究。
发明内容
为了提高DSP+SoC计算机系统中的处理效率,本发明提供了一种EMIF接口与AHB/APB时序桥接电路及其控制方法,实现了由DSP通过EMIF直接访问SoC 片内资源的桥接电路,该桥接电路集成于SoC片内,通过SoC的EMIF接口与DSP 连接,该电路将EMIF时序转换为片内AMBA总线的AHB/APB时序,从而实现 DSP对片内资源的访问。
本发明目的是通过以下技术方案来实现的:
一种EMIF接口与AHB/APB时序桥接电路,所述桥接电路通过EMIF接口与外部DSP连接,桥接电路包括:DSP信号同步模块、DSP操作检测模块、地址映射控制器、数据位宽匹配器、AHB/APB时序生成状态机及配置寄存器;
所述的DSP信号同步模块用于将DSP输入信号进行同步处理,并将结果输出给DSP操作检测模块和地址映射控制器;
所述的DSP操作检测模块用于检测DSP所发起的访问请求,检测当前DSP 的操作为读或写操作,并将检测结果输出给AHB/APB时序生成状态机;
所述的地址映射控制器用于存储用户配置的DSP到AHB/APB访问的地址映射关系,并在DSP访问AHB/APB从机时根据用户设置的地址映射关系生成所需的AHB/APB访问地址;并将访问地址发送给AHB/APB时序生成状态机;
所述的AHB/APB时序生成状态机用于DSP的EMIF访问时序到AHB/APB 访问时序的转换;根据DSP操作检测模块的检测结果确定需要产生的AHB或 APB时序;
所述的配置寄存器用于进行工作模式、边界地址、高位地址的配置;
所述的数据位宽匹配器为每一路AHB/APB从机设置了1个16位的读/写数据缓冲区,用于EMIF接口与AHB/APB从机数据位宽匹配。
所述的地址映射控制器包含一片低位地址映射区域,用于存储AHB/APB从机的低位地址,该低位地址映射区域划分为多个低位地址映射子区域,分别对应一个AHB/APB从机;各个低位地址映射子区域的边界地址由寄存器配置,每个低位地址映射子区域对应一个高位地址寄存器,对应每一路AHB/APB从机的高位地址。
所述桥接电路的工作模式包括配置和运行两种模式,上电复位后电路处于配置模式,DSP可通过EMIF接口配置高位地址寄存器、边界地址寄存器、低位地址区,完成EMIF地址到AHB/APB地址映射关系的配置;DSP完成地址配置后可将电路置为运行模式;在运行模式下时,桥接电路在检测到DSP的一次有效访问后,根据地址映射关系,将EMIF地址转换为AHB/APB地址,生成 AHB/APB访问时序。
所述的地址映射控制器用于:
1)EMIF的地址与所有的边界地址进行比较,根据比较结果判断EMIF接口需要访问的从机,取出该从机对应高位地址寄存器的数据作为AHB/APB地址的高位地址;
2)取出EMIF地址所对应低位地址区的数据作为AHB/APB地址的低位地址;
3)译码选择出的高位地址寄存器中的数据作为AHB/APB高位地址,地址映射区域中的数据作为AHB/APB低位地址,拼接产生AHB/APB目标地址;
从而完成EMIF接口地址到AHB/APB地址的映射,该地址将作为时序生成状态机的输入用于产生相应的AHB/APB时序。
所述的数据位宽匹配器用于:
1)若DSP要访问的是16位数据,则直接访问,桥接电路根据EMIF地址生成AHB/APB地址后直接访问相应从机;
2)若DSP要访问的是32位数据,则若当前操作为写操作,DSP首先将高 16位数据写入相应从机所对应的读/写数据寄存器中,接着发起所需访问单元的写操作,数据位宽匹配器将读/写数据寄存器中的数据取出作为高16位数据,将当前操作的数据作为低16位数据,拼接后的32位数据与根据当前EMIF地址生成的AHB/APB地址及控制信号一起传输给时序生成状态机,产生相应的写操作;若当前操作为读操作,桥接电路根据EMIF地址生成AHB/APB地址后发起读访问,数据位宽匹配器将读出的高16位数据缓存至读/写数据寄存器中,并向DSP返回低16位数据,DSP访问读/写数据寄存器时,将高16位数据返回。
所述的AHB/APB时序生成状态机用于:
在IDLE态,检测本次操作类型:1)当本次操作为读操作时,状态机由IDLE 态跳转到RD1态,若当前访问地址为AHB地址,则产生相应控制时序并跳转到RD2状态,若当前生成时序为APB访问时序则根据访问地址产生APB第一周期的时序并跳转到RD2状态;在RD2状态下,若当前时序为AHB时序则等待hready信号拉高后将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转至IDLE态;若当前时序为APB时序则将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转到IDLE态;2)当检测到写操作时,状态机由IDLE态跳转到WR1态,若当前目标地址为AHB地址,则生成相应的AHB写时序,状态跳转至WR2状态;若当前地址为APB地址则产生APB第一周期的时序并跳转到WR2状态;在WR2状态下,若当前时序为AHB访问时序则将读/写数据缓冲区的值输出给AHB数据总线,并等待 hready信号拉高后跳转到IDLE态;若当前时序为APB访问时序则生成所需的时序后直接跳转到IDLE态。
一种EMIF接口与AHB/APB时序桥接电路的控制方法,包括以下步骤:
1)在配置模式下,地址映射控制器译码EMIF地址访问低位地址区、高位地址寄存器、边界地址寄存器等对EMIF到AHB/APB地址映射关系进行设置;
2)在运行模式下,地址映射控制器译码EMIF地址访问低位地址区获取 AHB/APB低位地址,将EMIF地址与边界地址寄存器的值进行比较确定当前访问的具体从机,据此确定AHB/APB高位地址,高位和低位地址拼接后传递给 AHB/APB时序生成状态机;地址映射控制器进行地址转换的同时,DSP操作检测模块检测当前DSP的操作是读操作还是写操作,并将检测结果传递给 AHB/APB时序生成状态机;
3)AHB/APB时序生成状态机接收到AHB/APB地址及DSP操作检测结果后进行如下处理:若当前访问为写操作,则将数据位宽匹配器给出的数据作为写数据生成相应的AHB或APB写时序;若当前访问为读操作,则生成相应的 AHB或APB读时序,读操作完成后将数据传递给数据位宽匹配器,数据位宽匹配器将低16位数据返回给EMIF接口,并将高16位数据寄存以便DSP在后续访问时将数据取出。
所述的地址映射控制器的地址映射方法具体为:
1)EMIF的地址与所有的边界地址进行比较,根据比较结果判断EMIF接口需要访问的从机,取出该从机对应高位地址寄存器的数据作为AHB/APB地址的高位地址;
2)取出EMIF地址所对应低位地址区的数据作为AHB/APB地址的低位地址;
3)译码选择出的高位地址寄存器中的数据作为AHB/APB高位地址,地址映射区域中的数据作为AHB/APB低位地址,拼接产生AHB/APB目标地址;
从而完成EMIF接口地址到AHB/APB地址的映射,该地址将作为时序生成状态机的输入用于产生相应的AHB/APB时序。
所述的数据位宽匹配器的工作过程为:
1)若DSP要访问的是16位数据,则直接访问,桥接电路根据EMIF地址生成AHB/APB地址后直接访问相应从机;
2)若DSP要访问的是32位数据,则若当前操作为写操作,DSP首先将高 16位数据写入相应从机所对应的读/写数据寄存器中,接着发起所需访问单元的写操作,数据位宽匹配器将读/写数据寄存器中的数据取出作为高16位数据,将当前操作的数据作为低16位数据,拼接后的32位数据与根据当前EMIF地址生成的AHB/APB地址及控制信号一起传输给时序生成状态机,产生相应的写操作;若当前操作为读操作,桥接电路根据EMIF地址生成AHB/APB地址后发起读访问,数据位宽匹配器将读出的高16位数据缓存至读/写数据寄存器中,并向DSP返回低16位数据,DSP访问读/写数据寄存器时,将高16位数据返回。
所述的AHB/APB时序生成状态机的处理过程为:
在IDLE态,检测本次操作类型:1)当本次操作为读操作时,状态机由IDLE 态跳转到RD1态,若当前访问地址为AHB地址,则产生相应控制时序并跳转到RD2状态,若当前生成时序为APB访问时序则根据访问地址产生APB第一周期的时序并跳转到RD2状态;在RD2状态下,若当前时序为AHB时序则等待hready信号拉高后将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转至IDLE态;若当前时序为APB时序则将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转到IDLE态;2)当检测到写操作时,状态机由IDLE态跳转到WR1态,若当前目标地址为AHB地址,则生成相应的AHB写时序,状态跳转至WR2状态;若当前地址为APB地址则产生APB第一周期的时序并跳转到WR2状态;在WR2状态下,若当前时序为AHB访问时序则将读/写数据缓冲区的值输出给AHB数据总线,并等待 hready信号拉高后跳转到IDLE态;若当前时序为APB访问时序则生成所需的时序后直接跳转到IDLE态。
相对于现有技术,本发明具有以下优点:
本发明通过DSP信号同步模块、DSP操作检测模块、地址映射控制器、数据位宽匹配器、AHB/APB时序生成状态机及配置寄存器的相互配合,完成对 DSP访问时序的解析、拼接以及转换功能,实现DSP与AHB/APB从机之间访问地址的灵活映射,能够适应不同AHB/APB从机的访问控制;高位地址寄存器的设置大大降低了地址映射关系存储所需的空间;边界地址寄存器的设置使得每个从机的访问空间能够自由配置,避免了从机所需访问空间不足或过剩的问题。该桥接电路集成于SoC片内,通过SoC的EMIF接口与DSP连接,该电路将EMIF时序转换为片内AMBA总线的AHB/APB时序,从而实现DSP对片内资源的访问。实现DSP对片内资源的直接访问,相比于缓冲区通讯方式,同等大小的数据量的访问速度提高10倍以上。
进一步,定制化片内资源访问策略,即根据片内寄存器位宽定制不同的操作时序,从而达到16位、32位寄存器访问效率的最大化。
进一步,APB总线时序的直接映射,避免了访问APB从机时AHB到APB 桥的转换延迟,从而提高了APB从机的访问效率。
进一步,为了节省端口资源,EMIF接口为16位总线,而SoC片内AMBA 总线则为32位总线,因此本桥接电路同时实现了位宽转换功能。
本发明的控制方法实现了APB总线时序的直接映射,避免了访问APB从机时AHB到APB桥的转换延迟,从而提高了APB从机的访问效率。
附图说明
图1为所述桥接电路的接口框图;
图2为地址映射控制器的高16位地址生成逻辑;
图3为AHB/APB时序生成状态机的状态转移图;
图4为DSP地址空间划分情况图;
图5为应用本发明的某SoC系统结构简图。
具体实施方式
下面结合附图,对本发明的具体实施方式进行详细阐述,但本发明不限于该实施例。为了使公众对本发明有彻底的了解,在以下本发明优选施例中详细说明具体的细节。
本发明一种EMIF接口与AHB/APB时序桥接电路,解决DSP对SoC片上资源的直接访问问题,同时解决16位EMIF接口与32位AMBA总线的数据位宽匹配问题。所述桥接电路集成于SoC片内,通过EMIF接口与外部DSP连接,完成对DSP访问时序的解析、拼接以及转换功能,最终实现对于片内资源的高效操作。所述桥接电路最多支持DSP对16路AHB/APB从机的访问控制。
所述桥接电路结构框图如图1所示。该电路主要包括DSP信号同步模块、 DSP操作检测模块、地址映射控制器、数据位宽匹配器、AHB/APB时序生成状态机以及配置寄存器六个部分。DSP信号同步模块应用Double锁将DSP输入信号进行同步处理;DSP操作检测模块检测当前DSP的操作为读操作还是写操作;地址映射控制器存储用户配置的DSP到AHB/APB访问的地址映射关系,并在 DSP访问AHB/APB从机时根据用户设置的地址映射关系生成所需的AHB/APB 访问地址;AHB/APB时序生成状态机实现了DSP的EMIF访问时序到AHB/APB 访问时序的转换。配置寄存器用于进行工作模式、边界地址、高位地址等配置。
地址映射控制器实现DSP地址到AHB/APB地址的关联映射,该控制器包含一片低位地址映射区域,用于存储AHB/APB从机的低位地址,该区域可划分为16个(16为DSP可访问的SoC片内从机数,可根据不同SoC片内从机情况进行数量调整)低位地址映射子区域,分别对应一个AHB/APB从机,各个子区域的边界地址由寄存器配置。每个低位地址映射子区域对应一个高位地址寄存器,对应每一路AHB/APB从机的高位地址,因此16个低位地址映射子区域共有16个高位地址寄存器。DSP的EMIF接口到AHB/APB接口的地址映射方法为:1)EMIF的地址与所有的边界地址进行比较,根据比较结果判断EMIF接口需要访问哪个从机,取出该从机对应高位地址寄存器的数据作为AHB/APB地址的高位地址,高位地址生成逻辑如图2所示;2)取出EMIF地址所对应低位地址区的数据作为AHB/APB地址的低位地址;3)译码选择出的高位地址寄存器中的数据作为AHB/APB高位地址,地址映射区域中的数据作为AHB/APB低位地址,拼接产生AHB/APB目标地址。从而完成EMIF接口地址到AHB/APB地址的映射,该地址将作为时序生成状态机的输入用于产生相应的AHB/APB时序。
EMIF接口具有16位数据位宽,而SoC片上存储区则具有16位和32位两种位宽,对于16位的AHB/APB寄存器,EMIF接口的一次操作可转换为一次 AHB/APB操作,而对于32位的AHB/APB寄存器,则需要DSP端口两次操作方能够完成。数据位宽匹配器为每一路AHB/APB从机设置了1个16位的读/ 写数据缓冲区,以解决EMIF接口与AHB/APB从机数据位宽不匹配问题。数据位宽匹配器的工作过程如下:1)若DSP要访问的是16位数据,则直接访问即可,桥接电路根据EMIF地址生成AHB/APB地址后直接访问相应从机。2)若 DSP要访问的是32位数据,则若当前操作为写操作,DSP首先将高16位数据写入相应从机所对应的读/写数据寄存器中,接着发起所需访问单元的写操作,数据位宽匹配器将读/写数据寄存器中的数据取出作为高16位数据,将当前操作的数据作为低16位数据,拼接后的32位数据与根据当前EMIF地址生成的 AHB/APB地址及控制信号一起传输给时序生成状态机,产生相应的写操作;若当前操作为读操作,桥接电路根据EMIF地址生成AHB/APB地址后发起读访问,数据位宽匹配器将读出的高16位数据缓存至读/写数据寄存器中,并向DSP返回低16位数据,DSP访问读/写数据寄存器时,将高16位数据返回。
DSP操作检测模块用于检测DSP所发起的访问请求,并将检测结果输出给 AHB/APB时序生成状态机。
AHB/APB时序生成状态机根据DSP操作检测模块的检测结果确定需要产生的AHB或APB时序。其工作过程如图3所示,在IDLE态,检测本次操作类型:1)当本次操作为读操作时,状态机由IDLE态跳转到RD1态,若当前访问地址为AHB地址,则产生相应控制时序并跳转到RD2状态,若当前生成时序为APB访问时序则根据访问地址产生APB第一周期的时序并跳转到RD2状态。在RD2状态下,若当前时序为AHB时序则等待hready信号拉高后将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP 的EMIF接口,状态转跳至IDLE态;若当前时序为APB时序则将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的 EMIF接口,状态转跳到IDLE态。2)当检测到写操作时,状态机由IDLE态跳转到WR1态,若当前目标地址为AHB地址,则生成相应的AHB写时序,状态跳转至WR2状态;若当前地址为APB地址则产生APB第一周期的时序并跳转到WR2状态。在WR2状态下,若当前时序为AHB访问时序则将读/写数据缓冲区的值输出给AHB数据总线,并等待hready信号拉高后跳转到IDLE态;若当前时序为APB访问时序则生成所需的时序后直接跳转到IDLE态。
所述桥接电路有配置和运行两种模式。上电复位后电路处于配置模式,即此时DSP可通过EMIF接口配置高位地址寄存器、边界地址寄存器、低位地址区等完成EMIF地址到AHB/APB地址映射关系的配置,高位地址寄存器、边界地址寄存器、低位地址区的地址分配情况如图4所示。DSP完成地址配置后可将电路置为运行模式。在运行模式下,桥接电路在检测到DSP的一次有效访问后,根据地址映射关系,将EMIF地址转换为AMBA总线地址,生成AHB/APB 访问时序。
本发明所述桥接电路的工作过程如下:
1)在配置模式下,地址映射控制器译码EMIF地址访问低位地址区、高位地址寄存器、边界地址寄存器等对EMIF到AHB/APB地址映射关系进行设置。
2)在运行模式下,地址映射控制器译码EMIF地址访问低位地址区获取 AHB/APB低位地址,将EMIF地址与边界地址寄存器的值进行比较确定当前访问哪一个从机,据此确定AHB/APB高位地址,高位和低位地址拼接后传递给 AHB/APB时序生成状态机。地址映射控制器进行地址转换的同时,DSP操作检测模块检测当前DSP的操作是读操作还是写操作,并将检测结果传递给 AHB/APB时序生成状态机。
3)AHB/APB时序生成状态机接收到AHB/APB地址及DSP操作检测结果后进行如下处理:若当前访问为写操作,则将数据位宽匹配器给出的数据作为写数据生成相应的AHB或APB写时序;若当前访问为读操作,则生成相应的 AHB或APB读时序,读操作完成后将数据传递给数据位宽匹配器,数据位宽匹配器将低16位数据返回给EMIF接口,并将高16位数据寄存以便DSP在后续访问时将数据取出。
具体的,结合附图进行说明本发明的具体结构的作用:
图1为所述桥接电路的接口框图。在配置模式下,DSP EMIF接口只能访问地址映射控制器及系统寄存器配置用户所需的地址映射关系,其写入和读出数据分别为edatain和edataout_1。在工作模式下,地址映射控制器根据EMIF接口的访问地址EA生成AHB/APB时序生成状态机所需的地址amba_addr。若当前操作为写操作,数据位宽匹配器将根据读/写数据寄存器和EMIF接口输入数据 edatain产生写数据datain,若当前操作为读操作,数据位宽匹配器将从机返回的数据dataout的高16位寄存在读/写数据寄存器中,将低16位数据edataout_0传输给DSP EMIF接口数据总线ED。AHB/APB时序生成状态机通过AHB/APB 从机的输入输出信号与从机进行交互,将写数据datain传输给从机,将读数据 dataout传递给数据位宽匹配器。
图2为地址映射控制器的高16位地址生成逻辑。在工作模式下,当DSP EMIF接口有访问时,地址映射控制器将当前操作地址与15个边界寄存器的值进行比较,由比较结果生成高位地址选择信号,若当前路的高位地址选择信号为0则说明当前操作访问的不是该路从机,其高位地址输出0x0000,否则输出相应高位地址寄存器的值。随后,将所有路的高位地址进行两级或运算后就获得了当前操作对应路的高位地址。
图3为AHB/APB时序生成状态机的状态转移图。其状态转移关系在发明内容中已经做了详细论述,这里不再赘述。
图4为DSP地址空间划分情况图。其中,0x0000~0xFFCF为低位地址存储区,用于存储用户设置的低位地址映射关系;0xFFD0~0xFFDF为读/写数据寄存器,用于缓存EMIF接口读/写操作的高16位数据;0xFFE0~0xFFEF为高位地址寄存器,用于存储16路从机的高16位地址;0xFFF0~0xFFFE为边界地址寄存器,用于对低位地址存储区进行划分;0xFFFF为控制寄存器,高15位为15~1 路从机的时序控制位,0位为电路模式控制位。
本发明已应用于某基于SPARC V8架构的SoC上,该SoC与DSP的连接关系简图如图5所示。本发明的应用使得DSP能够访问控制SoC片上外设,如 CAN总线控制器、UART等AHB/APB从机。
以上,仅为本发明的较佳实施例,并非仅限于本发明的实施范围,凡依本发明专利范围的内容所做的等效变化和修饰,都应为本发明的技术范畴。

Claims (10)

1.一种EMIF接口与AHB/APB时序桥接电路,其特征在于,所述桥接电路通过EMIF接口与外部DSP连接,桥接电路包括:DSP信号同步模块、DSP操作检测模块、地址映射控制器、数据位宽匹配器、AHB/APB时序生成状态机及配置寄存器;
所述的DSP信号同步模块用于将DSP输入信号进行同步处理,并将结果输出给DSP操作检测模块和地址映射控制器;
所述的DSP操作检测模块用于检测DSP所发起的访问请求,检测当前DSP的操作为读或写操作,并将检测结果输出给AHB/APB时序生成状态机;
所述的地址映射控制器用于存储用户配置的DSP到AHB/APB访问的地址映射关系,并在DSP访问AHB/APB从机时根据用户设置的地址映射关系生成所需的AHB/APB访问地址;并将访问地址发送给AHB/APB时序生成状态机;
所述的AHB/APB时序生成状态机用于DSP的EMIF访问时序到AHB/APB访问时序的转换;根据DSP操作检测模块的检测结果确定需要产生的AHB或APB时序;
所述的配置寄存器用于进行工作模式、边界地址、高位地址的配置;
所述的数据位宽匹配器为每一路AHB/APB从机设置了1个16位的读/写数据缓冲区,用于EMIF接口与AHB/APB从机数据位宽匹配。
2.根据权利要求1所述的EMIF接口与AHB/APB时序桥接电路,其特征在于,所述的地址映射控制器包含一片低位地址映射区域,用于存储AHB/APB从机的低位地址,该低位地址映射区域划分为多个低位地址映射子区域,分别对应一个AHB/APB从机;各个低位地址映射子区域的边界地址由寄存器配置,每个低位地址映射子区域对应一个高位地址寄存器,对应每一路AHB/APB从机的高位地址。
3.根据权利要求1所述的EMIF接口与AHB/APB时序桥接电路,其特征在于,所述桥接电路的工作模式包括配置和运行两种模式,上电复位后电路处于配置模式,DSP可通过EMIF接口配置高位地址寄存器、边界地址寄存器、低位地址区,完成EMIF地址到AHB/APB地址映射关系的配置;DSP完成地址配置后可将电路置为运行模式;在运行模式下时,桥接电路在检测到DSP的一次有效访问后,根据地址映射关系,将EMIF地址转换为AHB/APB地址,生成AHB/APB访问时序。
4.根据权利要求1所述的EMIF接口与AHB/APB时序桥接电路,其特征在于,所述的地址映射控制器用于:
1)EMIF的地址与所有的边界地址进行比较,根据比较结果判断EMIF接口需要访问的从机,取出该从机对应高位地址寄存器的数据作为AHB/APB地址的高位地址;
2)取出EMIF地址所对应低位地址区的数据作为AHB/APB地址的低位地址;
3)译码选择出的高位地址寄存器中的数据作为AHB/APB高位地址,地址映射区域中的数据作为AHB/APB低位地址,拼接产生AHB/APB目标地址;
从而完成EMIF接口地址到AHB/APB地址的映射,该地址将作为时序生成状态机的输入用于产生相应的AHB/APB时序。
5.根据权利要求1所述的EMIF接口与AHB/APB时序桥接电路,其特征在于,所述的数据位宽匹配器用于:
1)若DSP要访问的是16位数据,则直接访问,桥接电路根据EMIF地址生成AHB/APB地址后直接访问相应从机;
2)若DSP要访问的是32位数据,则若当前操作为写操作,DSP首先将高16位数据写入相应从机所对应的读/写数据寄存器中,接着发起所需访问单元的写操作,数据位宽匹配器将读/写数据寄存器中的数据取出作为高16位数据,将当前操作的数据作为低16位数据,拼接后的32位数据与根据当前EMIF地址生成的AHB/APB地址及控制信号一起传输给时序生成状态机,产生相应的写操作;若当前操作为读操作,桥接电路根据EMIF地址生成AHB/APB地址后发起读访问,数据位宽匹配器将读出的高16位数据缓存至读/写数据寄存器中,并向DSP返回低16位数据,DSP访问读/写数据寄存器时,将高16位数据返回。
6.根据权利要求1所述的EMIF接口与AHB/APB时序桥接电路,其特征在于,所述的AHB/APB时序生成状态机用于:
在IDLE态,检测本次操作类型:1)当本次操作为读操作时,状态机由IDLE态跳转到RD1态,若当前访问地址为AHB地址,则产生相应控制时序并跳转到RD2状态,若当前生成时序为APB访问时序则根据访问地址产生APB第一周期的时序并跳转到RD2状态;在RD2状态下,若当前时序为AHB时序则等待hready信号拉高后将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转至IDLE态;若当前时序为APB时序则将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转到IDLE态;2)当检测到写操作时,状态机由IDLE态跳转到WR1态,若当前目标地址为AHB地址,则生成相应的AHB写时序,状态跳转至WR2状态;若当前地址为APB地址则产生APB第一周期的时序并跳转到WR2状态;在WR2状态下,若当前时序为AHB访问时序则将读/写数据缓冲区的值输出给AHB数据总线,并等待hready信号拉高后跳转到IDLE态;若当前时序为APB访问时序则生成所需的时序后直接跳转到IDLE态。
7.一种EMIF接口与AHB/APB时序桥接电路的控制方法,其特征在于,包括以下步骤:
1)在配置模式下,地址映射控制器译码EMIF地址访问低位地址区、高位地址寄存器、边界地址寄存器等对EMIF到AHB/APB地址映射关系进行设置;
2)在运行模式下,地址映射控制器译码EMIF地址访问低位地址区获取AHB/APB低位地址,将EMIF地址与边界地址寄存器的值进行比较确定当前访问的具体从机,据此确定AHB/APB高位地址,高位和低位地址拼接后传递给AHB/APB时序生成状态机;地址映射控制器进行地址转换的同时,DSP操作检测模块检测当前DSP的操作是读操作还是写操作,并将检测结果传递给AHB/APB时序生成状态机;
3)AHB/APB时序生成状态机接收到AHB/APB地址及DSP操作检测结果后进行如下处理:若当前访问为写操作,则将数据位宽匹配器给出的数据作为写数据生成相应的AHB或APB写时序;若当前访问为读操作,则生成相应的AHB或APB读时序,读操作完成后将数据传递给数据位宽匹配器,数据位宽匹配器将低16位数据返回给EMIF接口,并将高16位数据寄存以便DSP在后续访问时将数据取出。
8.根据权利要求7所述的EMIF接口与AHB/APB时序桥接电路的控制方法,其特征在于,所述的地址映射控制器的地址映射方法具体为:
1)EMIF的地址与所有的边界地址进行比较,根据比较结果判断EMIF接口需要访问的从机,取出该从机对应高位地址寄存器的数据作为AHB/APB地址的高位地址;
2)取出EMIF地址所对应低位地址区的数据作为AHB/APB地址的低位地址;
3)译码选择出的高位地址寄存器中的数据作为AHB/APB高位地址,地址映射区域中的数据作为AHB/APB低位地址,拼接产生AHB/APB目标地址;
从而完成EMIF接口地址到AHB/APB地址的映射,该地址将作为时序生成状态机的输入用于产生相应的AHB/APB时序。
9.根据权利要求7所述的EMIF接口与AHB/APB时序桥接电路的控制方法,其特征在于,所述的数据位宽匹配器的工作过程为:
1)若DSP要访问的是16位数据,则直接访问,桥接电路根据EMIF地址生成AHB/APB地址后直接访问相应从机;
2)若DSP要访问的是32位数据,则若当前操作为写操作,DSP首先将高16位数据写入相应从机所对应的读/写数据寄存器中,接着发起所需访问单元的写操作,数据位宽匹配器将读/写数据寄存器中的数据取出作为高16位数据,将当前操作的数据作为低16位数据,拼接后的32位数据与根据当前EMIF地址生成的AHB/APB地址及控制信号一起传输给时序生成状态机,产生相应的写操作;若当前操作为读操作,桥接电路根据EMIF地址生成AHB/APB地址后发起读访问,数据位宽匹配器将读出的高16位数据缓存至读/写数据寄存器中,并向DSP返回低16位数据,DSP访问读/写数据寄存器时,将高16位数据返回。
10.根据权利要求7所述的EMIF接口与AHB/APB时序桥接电路的控制方法,其特征在于,所述的AHB/APB时序生成状态机的处理过程为:
在IDLE态,检测本次操作类型:1)当本次操作为读操作时,状态机由IDLE态跳转到RD1态,若当前访问地址为AHB地址,则产生相应控制时序并跳转到RD2状态,若当前生成时序为APB访问时序则根据访问地址产生APB第一周期的时序并跳转到RD2状态;在RD2状态下,若当前时序为AHB时序则等待hready信号拉高后将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转至IDLE态;若当前时序为APB时序则将从机返回的高16位数据寄存到当前路的读/写数据寄存器中、将低16位数据返回给DSP的EMIF接口,状态跳转到IDLE态;2)当检测到写操作时,状态机由IDLE态跳转到WR1态,若当前目标地址为AHB地址,则生成相应的AHB写时序,状态跳转至WR2状态;若当前地址为APB地址则产生APB第一周期的时序并跳转到WR2状态;在WR2状态下,若当前时序为AHB访问时序则将读/写数据缓冲区的值输出给AHB数据总线,并等待hready信号拉高后跳转到IDLE态;若当前时序为APB访问时序则生成所需的时序后直接跳转到IDLE态。
CN201710300299.6A 2017-04-28 2017-04-28 一种emif接口与ahb/apb时序桥接电路及其控制方法 Active CN107085560B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710300299.6A CN107085560B (zh) 2017-04-28 2017-04-28 一种emif接口与ahb/apb时序桥接电路及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710300299.6A CN107085560B (zh) 2017-04-28 2017-04-28 一种emif接口与ahb/apb时序桥接电路及其控制方法

Publications (2)

Publication Number Publication Date
CN107085560A true CN107085560A (zh) 2017-08-22
CN107085560B CN107085560B (zh) 2019-12-03

Family

ID=59611448

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710300299.6A Active CN107085560B (zh) 2017-04-28 2017-04-28 一种emif接口与ahb/apb时序桥接电路及其控制方法

Country Status (1)

Country Link
CN (1) CN107085560B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107807888A (zh) * 2017-09-04 2018-03-16 东莞市爱协生智能科技有限公司 一种用于soc架构的数据预取系统及其方法
CN109308283A (zh) * 2018-08-31 2019-02-05 西安微电子技术研究所 一种SoC片上系统及其外设总线切换方法
CN109726149A (zh) * 2018-12-11 2019-05-07 中国航空工业集团公司西安航空计算技术研究所 一种axi总线访问nand flash的方法及装置
CN110765052A (zh) * 2019-10-22 2020-02-07 广东高云半导体科技股份有限公司 一种ahb/apb扩展总线接口、片上系统
CN115037568A (zh) * 2022-05-16 2022-09-09 中国人民解放军海军工程大学 基于io映射的工业总线传输方法
CN116055243A (zh) * 2022-09-27 2023-05-02 上海创贤半导体有限公司 一种功率半导体引线键合机控制系统地址映射的方法
CN116049047A (zh) * 2022-12-30 2023-05-02 成都电科星拓科技有限公司 一种eeprom访问结构及访问方法
CN116991330A (zh) * 2023-09-25 2023-11-03 苏州元脑智能科技有限公司 数据存储装置、数据读写方法及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138253A1 (en) * 2003-12-17 2005-06-23 Samsung Electronics Co., Ltd. Advanced microcontroller bus architecture (AMBA) system with reduced power consumption and method of driving AMBA system
US20070198762A1 (en) * 2003-12-18 2007-08-23 Xiaokun Xiong A bus interface converter capable of converting amba ahb bus protocol into i960-like bus protocol
CN102722457A (zh) * 2012-05-30 2012-10-10 中国科学院微电子研究所 总线接口转换方法及总线桥接装置
US20120278516A1 (en) * 2009-11-25 2012-11-01 Joachim Meichle Addressable FIFO
CN103198043A (zh) * 2013-01-24 2013-07-10 杭州中科微电子有限公司 一种改进的AHB to APB总线桥及其控制方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138253A1 (en) * 2003-12-17 2005-06-23 Samsung Electronics Co., Ltd. Advanced microcontroller bus architecture (AMBA) system with reduced power consumption and method of driving AMBA system
US20070198762A1 (en) * 2003-12-18 2007-08-23 Xiaokun Xiong A bus interface converter capable of converting amba ahb bus protocol into i960-like bus protocol
US20120278516A1 (en) * 2009-11-25 2012-11-01 Joachim Meichle Addressable FIFO
CN102722457A (zh) * 2012-05-30 2012-10-10 中国科学院微电子研究所 总线接口转换方法及总线桥接装置
CN103198043A (zh) * 2013-01-24 2013-07-10 杭州中科微电子有限公司 一种改进的AHB to APB总线桥及其控制方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107807888A (zh) * 2017-09-04 2018-03-16 东莞市爱协生智能科技有限公司 一种用于soc架构的数据预取系统及其方法
CN107807888B (zh) * 2017-09-04 2021-03-02 深圳市爱协生科技有限公司 一种用于soc架构的数据预取系统及其方法
CN109308283A (zh) * 2018-08-31 2019-02-05 西安微电子技术研究所 一种SoC片上系统及其外设总线切换方法
CN109308283B (zh) * 2018-08-31 2022-11-22 西安微电子技术研究所 一种SoC片上系统及其外设总线切换方法
CN109726149B (zh) * 2018-12-11 2022-05-27 中国航空工业集团公司西安航空计算技术研究所 一种axi总线访问nand flash的方法及装置
CN109726149A (zh) * 2018-12-11 2019-05-07 中国航空工业集团公司西安航空计算技术研究所 一种axi总线访问nand flash的方法及装置
CN110765052A (zh) * 2019-10-22 2020-02-07 广东高云半导体科技股份有限公司 一种ahb/apb扩展总线接口、片上系统
CN110765052B (zh) * 2019-10-22 2020-11-20 广东高云半导体科技股份有限公司 一种ahb/apb扩展总线接口、片上系统
CN115037568A (zh) * 2022-05-16 2022-09-09 中国人民解放军海军工程大学 基于io映射的工业总线传输方法
CN115037568B (zh) * 2022-05-16 2024-05-07 中国人民解放军海军工程大学 基于io映射的工业总线传输方法
CN116055243A (zh) * 2022-09-27 2023-05-02 上海创贤半导体有限公司 一种功率半导体引线键合机控制系统地址映射的方法
CN116049047A (zh) * 2022-12-30 2023-05-02 成都电科星拓科技有限公司 一种eeprom访问结构及访问方法
CN116049047B (zh) * 2022-12-30 2024-04-12 成都电科星拓科技有限公司 一种eeprom访问方法
CN116991330A (zh) * 2023-09-25 2023-11-03 苏州元脑智能科技有限公司 数据存储装置、数据读写方法及电子设备

Also Published As

Publication number Publication date
CN107085560B (zh) 2019-12-03

Similar Documents

Publication Publication Date Title
CN107085560B (zh) 一种emif接口与ahb/apb时序桥接电路及其控制方法
US7222262B2 (en) Methods and devices for injecting commands in systems having multiple multi-processor clusters
CN105468568B (zh) 高效的粗粒度可重构计算系统
CN102567280B (zh) 一种基于dsp和fpga的计算机硬件平台设计方法
CN101364346A (zh) 基于视频流的嵌入式实时智能交通监控系统
KR20050051672A (ko) 스케일러블 멀티채널 메모리 액세스를 위한 방법 및 메모리제어기
CN111290986B (zh) 一种基于神经网络的总线互联系统
CN107992390A (zh) 一种基于片上总线的芯片调试方法
CN104714907B (zh) 一种pci总线转换为isa和apb总线设计方法
CN101162479A (zh) 基于软核cpu技术的电能质量监测专用集成电路的设计方法
CN114265872B (zh) 一种用于总线的互联装置
CN106294239A (zh) 一种外围总线apb总线桥
CN114297097B (zh) 一种众核可定义分布式共享存储结构
CN102591817B (zh) 一种多总线桥控制器及其实现方法
US6954869B2 (en) Methods and apparatus for clock domain conversion in digital processing systems
CN110968544B (zh) 一种基于嵌入式自旋转移力矩磁随机存储器的SoC存储系统
CN107807890A (zh) 内嵌sdram存储器的fpga、布局方法、设备及电路板
CN219574799U (zh) 一种基于amba总线的多总线桥接器及其片上系统
CN102722457B (zh) 总线接口转换方法及总线桥接装置
CN109491949B (zh) 基于Zynq的动态可重构框架及方法
CN106326172B (zh) 一种APB总线slave接口扩展电路及其使用方法
CN107426118B (zh) 一种基于mdc/mdio接口的千兆以太网交换电路访问装置
CN116757132A (zh) 异构多核fpga电路架构、构建方法及数据传输方法
Xiao et al. Design of AXI bus based MPSoC on FPGA
US11593547B1 (en) Prediction and optimization of multi-kernel circuit design performance using a programmable overlay

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant