CN111291524B - 一种实现axi总线跨时钟域的结构及方法 - Google Patents
一种实现axi总线跨时钟域的结构及方法 Download PDFInfo
- Publication number
- CN111291524B CN111291524B CN202010063296.7A CN202010063296A CN111291524B CN 111291524 B CN111291524 B CN 111291524B CN 202010063296 A CN202010063296 A CN 202010063296A CN 111291524 B CN111291524 B CN 111291524B
- Authority
- CN
- China
- Prior art keywords
- slave
- channel signal
- clock
- master
- subunit
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000006243 chemical reaction Methods 0.000 claims abstract description 35
- 230000004044 response Effects 0.000 claims description 95
- 230000009471 action Effects 0.000 claims description 69
- 230000003139 buffering effect Effects 0.000 claims description 41
- 230000005540 biological transmission Effects 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 11
- 102220619378 Alpha-1,3-galactosyltransferase 2_S21A_mutation Human genes 0.000 claims description 9
- 102220465380 NF-kappa-B inhibitor beta_S23A_mutation Human genes 0.000 claims description 9
- 102220502165 TP53-binding protein 1_S25A_mutation Human genes 0.000 claims description 6
- 102220511853 Replication protein A 32 kDa subunit_S26A_mutation Human genes 0.000 claims description 4
- 102220495838 Alkaline ceramidase 1_S29A_mutation Human genes 0.000 claims description 3
- 101001115218 Homo sapiens Ubiquitin-40S ribosomal protein S27a Proteins 0.000 claims description 3
- 102220498048 Junction plakoglobin_S24A_mutation Human genes 0.000 claims description 3
- 102220070930 rs794728599 Human genes 0.000 claims description 3
- 102220495789 Alkaline ceramidase 1_S28A_mutation Human genes 0.000 claims 2
- 102220474389 Retinoic acid receptor RXR-alpha_S27A_mutation Human genes 0.000 claims 1
- 230000006870 function Effects 0.000 description 193
- 238000010586 diagram Methods 0.000 description 11
- 102220485819 Desmoplakin_S28A_mutation Human genes 0.000 description 4
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 102100023341 Ubiquitin-40S ribosomal protein S27a Human genes 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- AQPYUQKKKCLZAT-UHFFFAOYSA-N 3-(2-oxopropylidene)-1h-indol-2-one Chemical compound C1=CC=C2C(=CC(=O)C)C(=O)NC2=C1 AQPYUQKKKCLZAT-UHFFFAOYSA-N 0.000 description 1
- 102100038199 Desmoplakin Human genes 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Multi Processors (AREA)
Abstract
本发明提供一种实现AXI总线跨时钟域的结构及方法,所述结构包括AXI总线功能通道模块、主模块和从模块,AXI总线功能通道模块与主模块和从模块均连接;AXI总线功能通道模块包括功能通道信号缓存FIFO单元、主时钟功能通道信号串并转换单元、从时钟功能通道信号串并转换单元、主控制逻辑单元以及从控制逻辑单元;方法:主模块以主时钟向主从向AXI总线功能通道子模块写入信号;主模块写入信号经主时钟功能通道信号合并子单元合并后,再通过主时钟功能通道信号缓存FIFO单元进行缓存,提供给从时钟功能通道信号拆分子单元进行拆分;从模块以从时钟自主从向AXI总线功能通道子模块读取从时钟功能通道信号拆分子单元拆分的信号。
Description
技术领域
本发明属于芯片设计技术领域,具体涉及一种实现AXI总线跨时钟域的结构及方法。
背景技术
AXI,是Advanced eXtensible Interface的简称,高级可扩展总线。
FIFO,是First In First Out的简称,一种先进先出的数据缓存器。
RTL,是Register Transfer Level的简称,是寄存器转换级电路。
FPGA,是Field-Programmable Gate Array的简称,现场可编程门阵列。
MMIO,是Memory Mapped Input Output的简称,内存映射IO。
AMBA,是Advanced Microcontroller Bus Architecture的简称,高级微处理器总线架构。
DDR,是DDR SDRAMDouble Data Ratesynchronous dynamic random-accessmemory的简称,双倍速率同步动态随机存储器。
片上系统SoC已经成为现在大规模数字集成电路设计的主流技术。SoC芯片一般由多个IP模块构成,如嵌入式CPU、DSP、各功能模块、存储模块、外部接口模块等。主模块与从模块之间由片上总线相连接,以完成控制信号和数据信号的传递。目前应用广泛的SoC总线协议有ARM公司的AMBA总线协议,AMBA协议包括AXI、AHB、APB等总线协议,其中AXI总线协议传输速率快,带宽高,是一种高性能、低延迟的片内总线,非常适用于需要带宽较高的数据传输。
在BMC设计项目中,使用AXI总线作为片内数据总线,负责传输DDR与其他子模块之间的数据信号传输。在其他子模块中,JPEG编码模块由于模块内部原因,无法直接使用AXI总线400MHz的时钟频率,需要使用较低频率的时钟作为接口时钟,而在FPGA设计中,输入时钟与模块时钟不一致,极容易导致亚稳态的出现,会对整体设计造成极大影响。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种实现AXI总线跨时钟域的结构及方法,是非常有必要的。
发明内容
针对现有技术的上述FPGA设计中,子模块之间通过AXI总线进行通信,但无法直接使用AXI总线的时钟频率的缺陷,本发明提供一种实现AXI总线跨时钟域的结构及方法,以解决上述技术问题。
第一方面,本发明提供一种实现AXI总线跨时钟域的结构,包括AXI总线功能通道模块、主模块和从模块,AXI总线功能通道模块与主模块和从模块均连接;
AXI总线功能通道模块包括功能通道信号缓存FIFO单元、主时钟功能通道信号串并转换单元、从时钟功能通道信号串并转换单元、主控制逻辑单元以及从控制逻辑单元;
功能通道信号缓存FIFO单元,用于实现主模块和从模块之间不同时钟信号的缓存;
主时钟功能通道信号串并转换单元,用于实现主模块与功能通道信号缓存FIFO单元之间信号的串并转换;
从时钟功能通道信号串并转换单元,用于实现从模块与功能通道信号缓存FIFO单元之间信号的串并转换;
主控制逻辑单元,用于控制主时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元进行的写入或读取动作;
从控制逻辑单元,用于控制从时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元进行的写入或读取动作。
进一步地,AXI总线功能通道模块包括主从向AXI总线功能通道子模块;
主从向AXI总线功能通道子模块包括主时钟功能通道信号缓存FIFO子单元、主时钟功能通道信号合并子单元、从时钟功能通道信号拆分子单元、主从向主控制逻辑子单元以及主从向从控制逻辑子单元;
主时钟功能通道信号缓存FIFO子单元,用于将主模块端以主时钟传输的信号进行缓存,并提供给从模块端以从时钟传输;
主时钟功能通道信号合并子单元,用于将主模块端以主时钟传输的并行信号合并,再提供给主时钟功能通道信号缓存FIFO子单元进行缓存;
从时钟功能通道信号拆分子单元,用于将主时钟功能通道信号缓存FIFO子单元缓存的信号进行拆分,并将拆分后信号以从时钟并行提供给从模块端;
主从向主控制逻辑子单元,用于控制主时钟功能通道信号合并子单元向主时钟功能通道信号缓存FIFO子单元的写入动作;
主从向从控制逻辑子单元,用于控制从时钟功能通道信号拆分子单元向主时钟功能通道信号缓存FIFO子单元的读取动作。
进一步地,AXI总线功能通道模块还包括从主向AXI总线功能通道子模块;
从主向AXI总线功能通道子模块包括从时钟功能通道信号缓存FIFO子单元、主时钟功能通道信号拆分子单元、从时钟功能通道信号合并子单元、从主向主控制逻辑子单元以及从主向从控制逻辑子单元;
从时钟功能通道信号缓存FIFO子单元,用于将从模块端以从时钟传输的信号进行缓存,并提供给主模块端以主时钟传输;
从时钟功能通道信号合并子单元,用于将从模块端以从时钟传输的并行信号合并,再提供给从时钟功能通道信号缓存FIFO子单元进行缓存;
主时钟功能通道信号拆分子单元,用于将从时钟功能通道信号缓存FIFO子单元缓存的信号进行拆分,并将拆分后信号以主时钟并行提供给主模块端;
从主向从控制逻辑子单元,用于控制从时钟功能通道信号合并子单元向从时钟功能通道信号缓存FIFO子单元的写入动作;
从主向主控制逻辑子单元,用于控制主时钟功能通道信号拆分子单元向从时钟功能通道信号缓存FIFO子单元的读取动作。
进一步地,主从向AXI总线功能通道子模块的实现形式包括AXI总线写地址通道、AXI总线写数据通道以及AXI总线读地址通道;
AXI总线写地址通道包括主时钟写地址通道信号缓存FIFO、主时钟写地址通道信号合并子单元、从时钟写地址通道信号拆分子单元、写地址主控制逻辑子单元以及写地址从控制逻辑子单元;
主时钟写地址通道信号缓存FIFO,用于将主模块端以主时钟传输的写地址信号进行缓存,并提供给从模块端以从时钟传输;
主时钟写地址通道信号合并子单元,用于将主模块端以主时钟传输的写地址并行信号合并,再提供给主时钟写地址通道信号缓存FIFO进行缓存;
从时钟写地址通道信号拆分子单元,用于将主时钟写地址通道信号缓存FIFO缓存的写地址信号进行拆分,并将拆分后写地址信号以从时钟并行提供给从模块端;
写地址主控制逻辑子单元,用于控制主时钟写地址通道信号合并子单元向主时钟写地址通道信号缓存FIFO的写入动作;
写地址从控制逻辑子单元,用于控制从时钟写地址通道信号拆分子单元向时钟写地址通道信号缓存FIFO的读取动作;
AXI总线写数据通道包括主时钟写数据通道信号缓存FIFO、主时钟写数据通道信号合并子单元、从时钟写数据通道信号拆分子单元、写数据主控制逻辑子单元以及写数据从控制逻辑子单元;
主时钟写数据通道信号缓存FIFO,用于将主模块端以主时钟传输的写数据信号进行缓存,并提供给从模块端以从时钟传输;
主时钟写数据通道信号合并子单元,用于将主模块端以主时钟传输的写数据并行信号合并,再提供给主时钟写数据通道信号缓存FIFO进行缓存;
从时钟写数据通道信号拆分子单元,用于将主时钟写数据通道信号缓存FIFO缓存的写数据信号进行拆分,并将拆分后写数据信号以从时钟并行提供给从模块端;
写数据主控制逻辑子单元,用于控制主时钟写数据通道信号合并子单元向主时钟写数据通道信号缓存FIFO的写入动作;
写数据从控制逻辑子单元,用于控制从时钟写数据通道信号拆分子单元向时钟写数据通道信号缓存FIFO的读取动作;
AXI总线读地址通道包括主时钟读地址通道信号缓存FIFO、主时钟读地址通道信号合并子单元、从时钟读地址通道信号拆分子单元、读地址主控制逻辑子单元以及读地址从控制逻辑子单元;
主时钟读地址通道信号缓存FIFO,用于将主模块端以主时钟传输的读地址信号进行缓存,并提供给从模块端以从时钟传输;
主时钟读地址通道信号合并子单元,用于将主模块端以主时钟传输的读地址并行信号合并,再提供给主时钟读地址通道信号缓存FIFO进行缓存;
从时钟读地址通道信号拆分子单元,用于将主时钟读地址通道信号缓存FIFO缓存的读地址信号进行拆分,并将拆分后读地址信号以从时钟并行提供给从模块端;
读地址主控制逻辑子单元,用于控制主时钟读地址通道信号合并子单元向主时钟读地址通道信号缓存FIFO的写入动作;
读地址从控制逻辑子单元,用于控制从时钟读地址通道信号拆分子单元向主时钟读地址通道信号缓存FIFO的读取动作。
进一步地,从主向AXI总线功能通道子模块的实现形式包括AXI总线读数据通道、AXI总线写响应通道;
AXI总线读数据通道包括从时钟读数据通道信号缓存FIFO、主时钟读数据通道信号拆分子单元、从时钟读数据通道信号合并子单元、读数据主控制逻辑子单元以及读数据从控制逻辑子单元;
从时钟读数据通道信号缓存FIFO,用于将从模块端以从时钟传输的读数据信号进行缓存,并提供给主模块端以主时钟传输;
从时钟读数据通道信号合并子单元,用于将从模块端以从时钟传输的读数据并行信号合并,再提供给从时钟读数据通道信号缓存FIFO进行缓存;
主时钟读数据通道信号拆分子单元,用于将从时钟读数据通道信号缓存FIFO缓存的读数据信号进行拆分,并将拆分后信号以主时钟并行提供给主模块端;
读数据从控制逻辑子单元,用于控制从时钟读数据通道信号合并子单元向从时钟读数据通道信号缓存FIFO的写入动作;
读数据主控制逻辑子单元,用于控制主时钟读数据通道信号拆分子单元向从时钟读数据通道信号缓存FIFO的读取动作;
AXI总线写响应通道包括从时钟写响应通道信号缓存FIFO、主时钟写响应通道信号拆分子单元、从时钟写响应通道信号合并子单元、写响应主控制逻辑子单元以及写响应从控制逻辑子单元;
从时钟写响应通道信号缓存FIFO,用于将从模块端以从时钟传输的写响应信号进行缓存,并提供给主模块端以主时钟传输;
从时钟写响应通道信号合并子单元,用于将从模块端以从时钟传输的写响应并行信号合并,再提供给从时钟写响应通道信号缓存FIFO进行缓存;
主时钟写响应通道信号拆分子单元,用于将从时钟写响应通道信号缓存FIFO缓存的写响应信号进行拆分,并将拆分后信号以主时钟并行提供给主模块端;
写响应从控制逻辑子单元,用于控制从时钟写响应通道信号合并子单元向从时钟写响应通道信号缓存FIFO的写入动作;
写响应主控制逻辑子单元,用于控制主时钟写响应通道信号拆分子单元向从时钟写响应通道信号缓存FIFO的读取动作。
第二方面,本发明提供一种实现AXI总线跨时钟域的方法,包括如下步骤:
S1.主模块以主时钟向主从向AXI总线功能通道子模块写入数据或地址信号;
S2.主模块写入的数据或地址信号经主时钟功能通道信号合并子单元合并后,再通过主时钟功能通道信号缓存FIFO单元进行缓存,提供给从时钟功能通道信号拆分子单元进行拆分;
S3.从模块以从时钟自主从向AXI总线功能通道子模块读取从时钟功能通道信号拆分子单元拆分的数据或地址信号。
进一步地,步骤S2中,主从向主控制逻辑子单元控制主时钟功能通道信号合并子单元向主时钟功能通道信号缓存FIFO单元的写入动作;具体步骤如下:
S21.主时钟功能通道信号合并子单元对主模块端以主时钟发送的数据或地址信号进行合并;
S22.主从向主控制逻辑子单元判断主模块端信号是否为有效的地址或数据信号;
若是,主从向主控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元开启写使能;进入步骤S23;
若否,返回步骤S21;
S23.主从向主控制逻辑子单元判断主时钟功能通道信号缓存FIFO单元是否是写满状态;
S24.若是,返回步骤S23;
若否,主时钟功能通道信号合并子单元向主时钟功能通道信号缓存FIFO单元执行写入动作后,主从向主控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;返回步骤S21。将AXI总线写操作的准备信号的生成逻辑放到了跨时钟域之前完成,降低AXI总线在跨时钟域过程中的延迟;使AXI总线写操作立刻可以得到响应信号,而不必考虑跨时钟域对当前操作的时钟延迟。
进一步地,步骤S2中,主从向从控制逻辑子单元控制从时钟功能通道信号拆分子单元向主时钟功能通道信号缓存FIFO单元的读取动作;
具体步骤如下:
S25.主从向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元开启读使能;
S26.主从向从控制逻辑子单元判断主时钟功能通道信号缓存FIFO单元是否是读空状态;
S27.若是,返回步骤S26;
若否,从时钟功能通道信号拆分子单元从主时钟功能通道信号缓存FIFO单元执行读出动作后,主从向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;
S28.主从向从控制逻辑子单元判断从模块是否准备好获取地址或数据信号;
S29.若否,返回步骤S28;
若是,返回步骤S25。
第三方面,本发明提供一种实现AXI总线跨时钟域的方法,包括如下步骤:
S1A.从模块以从时钟向从主向AXI总线功能通道子模块写入数据或响应信号;
S2A.从模块写入的数据或响应信号经从时钟功能通道信号合并子单元合并后,再通过从时钟功能通道信号缓存FIFO单元进行缓存,提供给主时钟功能通道信号拆分子单元进行拆分;
S3A.主模块以主时钟自从主向AXI总线功能通道子模块读取主时钟功能通道信号拆分子单元拆分的数据或地址信号。
进一步地,步骤S2A中,从主向从控制逻辑子单元控制从时钟功能通道信号合并子单元向从时钟功能通道信号缓存FIFO单元的写入动作;具体步骤如下:
S21A.从时钟功能通道信号合并子单元对从模块端以从时钟发送的数据或响应信号进行合并;
S22A.从主向从控制逻辑子单元判断从模块端信号是否为有效的数据或响应信号;
若是,从主向从控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元开启写使能;进入步骤S23A;
若否,返回步骤S21A;
S23A.从主向从控制逻辑子单元判断从时钟功能通道信号缓存FIFO单元是否是写满状态;
S24A.若是,返回步骤S23A;
若否,从时钟功能通道信号合并子单元向从时钟功能通道信号缓存FIFO单元执行写入动作后,从主向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;返回步骤S21A;
步骤S2A中,从主向主控制逻辑子单元控制主时钟功能通道信号拆分子单元向从时钟功能通道信号缓存FIFO单元的读取动作;
具体步骤如下:
S25A.从主向主控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元开启读使能;
S26A.从主向主控制逻辑子单元判断从时钟功能通道信号缓存FIFO单元是否是读空状态;
S27A.若是,返回步骤S26A;
若否,从时钟功能通道信号拆分子单元从从时钟功能通道信号缓存FIFO单元执行读出动作后,从主向主控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元关闭写使能;
S28A.从主向主控制逻辑子单元判断从模块是否准备好获取数据或响应信号;
S29A.若否,返回步骤S28A;
若是,返回步骤S25A。
本发明的有益效果在于,
本发明提供的实现AXI总线跨时钟域的系统及方法,实现主模块和从模块之间跨时钟在AXI总线传输,在国产BMC项目中成功将JPEG ENCODER子模块挂载到了系统AXI总线上,实现JPEG ENCODER子模块对DDR模块基于AXI总线的访问。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的主从向AXI总线功能通道模块结构示意图;
图2是本发明的从主向AXI总线功能通道模块结构示意图;
图3为本发明的AXI总线写地址通道结构示意图;
图4为本发明的AXI总线写数据通道结构示意图;
图5为本发明的AXI总线读地址通道结构示意图;
图6为本发明的AXI总线读数据通道结构示意图;
图7为本发明的AXI总线写响应通道结构示意图;
图8为本发明的主从向主控制逻辑子单元控制流程示意图;
图9为本发明的主从向从控制逻辑子单元控制流程示意图;
图10为本发明的从主向从控制逻辑子单元控制流程示意图;
图11为本发明的从主向主控制逻辑子单元控制流程示意图;
图中,1.1-主从向AXI总线功能通道子模块;1.1.1-AXI总线写地址通道;1.1.2-AXI总线写数据通道;1.1.3-AXI总线读地址通道;1.2-从主向AXI总线功能通道子模块;1.2.1-AXI总线读数据通道;1.2.2-AXI总线写响应通道;2-主模块;3-从模块;4.1-主时钟功能通道信号缓存FIFO子单元;4.1.1-主时钟写地址通道信号缓存FIFO;4.1.2-主时钟写数据通道信号缓存FIFO;4.1.3-主时钟读地址通道信号缓存FIFO;4.2-从时钟功能通道信号缓存FIFO子单元;4.2.1-从时钟读数据通道信号缓存FIFO;4.2.2-从时钟写响应通道信号缓存FIFO;5.1-主时钟功能通道信号合并子单元;5.1.1-主时钟写地址通道信号合并子单元;5.1.2-主时钟写数据通道信号合并子单元;5.1.3-主时钟读地址通道信号合并子单元;5.2-主时钟功能通道信号拆分子单元;5.2.1-主时钟读数据通道信号拆分子单元;5.2.2-主时钟写响应通道信号拆分子单元;6.1-从时钟功能通道信号拆分子单元;6.1.1-从时钟写地址通道信号拆分子单元;6.1.2-从时钟写数据通道信号拆分子单元;6.1.3-从时钟读地址通道信号拆分子单元;6.2-从时钟功能通道信号合并子单元;6.2.1-从时钟读数据通道信号合并子单元;6.2.2-从时钟写响应通道信号合并子单元;7.1-主从向主控制逻辑子单元;7.1.1-写地址主控制逻辑子单元;7.1.2-写数据主控制逻辑子单元;7.1.3-读地址主控制逻辑子单元;7.2-从主向主控制逻辑子单元;7.2.1-读数据主控制逻辑子单元;7.2.2-写响应主控制逻辑子单元;8.1-主从向从控制逻辑子单元;8.1.1-写地址从控制逻辑子单元;8.1.2-写数据从控制逻辑子单元;8.1.3-读地址从控制逻辑子单元;8.2-从主向从控制逻辑子单元;8.2.1-读数据从控制逻辑子单元;8.2.2-写响应从控制逻辑子单元。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例1:
如图1所示,本发明提供一种实现AXI总线跨时钟域的结构,包括AXI总线功能通道模块、主模块2和从模块3,AXI总线功能通道模块与主模块2和从模块3均连接;
AXI总线功能通道模块包括功能通道信号缓存FIFO单元、主时钟功能通道信号串并转换单元、从时钟功能通道信号串并转换单元、主控制逻辑单元以及从控制逻辑单元;
功能通道信号缓存FIFO单元,用于实现主模块2和从模块3之间不同时钟信号的缓存;
主时钟功能通道信号串并转换单元,用于实现主模块2与功能通道信号缓存FIFO单元之间信号的串并转换;
从时钟功能通道信号串并转换单元,用于实现从模块3与功能通道信号缓存FIFO单元之间信号的串并转换;
主控制逻辑单元,用于控制主时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元进行的写入或读取动作;
从控制逻辑单元,用于控制从时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元行的写入或读取动作;
AXI总线功能通道模块包括主从向AXI总线功能通道子模块1.1;
主从向AXI总线功能通道子模块1.1包括主时钟功能通道信号缓存FIFO子单元4.1、主时钟功能通道信号合并子单元5.1、从时钟功能通道信号拆分子单元6.1、主从向主控制逻辑子单元7.1以及主从向从控制逻辑子单元8.1;
主时钟功能通道信号缓存FIFO子单元4.1,用于将主模块2端以主时钟传输的信号进行缓存,并提供给从模块3端以从时钟传输;
主时钟功能通道信号合并子单元5.1,用于将主模块2端以主时钟传输的并行信号合并,再提供给主时钟功能通道信号缓存FIFO子单元4.1进行缓存;
从时钟功能通道信号拆分子单元6.1,用于将主时钟功能通道信号缓存FIFO子单元4.1缓存的信号进行拆分,并将拆分后信号以从时钟并行提供给从模块3端;
主从向主控制逻辑子单元7.1,用于控制主时钟功能通道信号合并子单元5.1向主时钟功能通道信号缓存FIFO子单元4.1的写入动作;
主从向从控制逻辑子单元8.1,用于控制从时钟功能通道信号拆分子单元6.1向主时钟功能通道信号缓存FIFO子单元4.1的读取动作。
实施例2:
如图2所示,本发明提供一种实现AXI总线跨时钟域的结构,包括AXI总线功能通道模块、主模块2和从模块3,AXI总线功能通道模块与主模块2和从模块3均连接;
AXI总线功能通道模块包括功能通道信号缓存FIFO单元、主时钟功能通道信号串并转换单元、从时钟功能通道信号串并转换单元、主控制逻辑单元以及从控制逻辑单元;
功能通道信号缓存FIFO单元,用于实现主模块2和从模块3之间不同时钟信号的缓存;
主时钟功能通道信号串并转换单元,用于实现主模块2与功能通道信号缓存FIFO单元之间信号的串并转换;
从时钟功能通道信号串并转换单元,用于实现从模块3与功能通道信号缓存FIFO单元之间信号的串并转换;
主控制逻辑单元,用于控制主时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元进行的写入或读取动作;
从控制逻辑单元,用于控制从时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元行的写入或读取动作;
AXI总线功能通道模块包括从主向AXI总线功能通道子模块1.2;
从主向AXI总线功能通道子模块1.2包括从时钟功能通道信号缓存FIFO子单元4.2、主时钟功能通道信号拆分子单元5.2、从时钟功能通道信号合并子单元6.2、从主向主控制逻辑子单元7.2以及从主向从控制逻辑子单元8.2;
从时钟功能通道信号缓存FIFO子单元4.2,用于将从模块3端以从时钟传输的信号进行缓存,并提供给主模块2端以主时钟传输;
从时钟功能通道信号合并子单元6.2,用于将从模块3端以从时钟传输的并行信号合并,再提供给从时钟功能通道信号缓存FIFO子单元4.2进行缓存;
主时钟功能通道信号拆分子单元5.2,用于将从时钟功能通道信号缓存FIFO子单元4.2缓存的信号进行拆分,并将拆分后信号以主时钟并行提供给主模块2端;
从主向从控制逻辑子单元8.2,用于控制从时钟功能通道信号合并子单元6.2向从时钟功能通道信号缓存FIFO子单元4.2的写入动作;
从主向主控制逻辑子单元7.2,用于控制主时钟功能通道信号拆分子单元5.2向从时钟功能通道信号缓存FIFO子单元4.2的读取动作。
实施例3:
如图3所示,上述实施例1中,主从向AXI总线功能通道子模块1.1的实现形式包括AXI总线写地址通道1.1.1;
AXI总线写地址通道1.1.1包括主时钟写地址通道信号缓存FIFO 4.1.1、主时钟写地址通道信号合并子单元5.1.1、从时钟写地址通道信号拆分子单元6.1.1、写地址主控制逻辑子单元7.1.1以及写地址从控制逻辑子单元8.1.1;
主时钟写地址通道信号缓存FIFO 4.1.1,用于将主模块2端以主时钟传输的写地址信号进行缓存,并提供给从模块3端以从时钟传输;
主时钟写地址通道信号合并子单元5.1.1,用于将主模块2端以主时钟传输的写地址并行信号合并,再提供给主时钟写地址通道信号缓存FIFO4.1.1进行缓存;
从时钟写地址通道信号拆分子单元6.1.1,用于将主时钟写地址通道信号缓存FIFO 4.1.1缓存的写地址信号进行拆分,并将拆分后写地址信号以从时钟并行提供给从模块3端;
写地址主控制逻辑子单元7.1.1,用于控制主时钟写地址通道信号合并子单元5.1.1向主时钟写地址通道信号缓存FIFO 4.1.1的写入动作;
写地址从控制逻辑子单元8.1.1,用于控制从时钟写地址通道信号拆分子单元6.1.1向时钟写地址通道信号缓存FIFO 4.1.1的读取动作。
实施例4:
如图4所示,上述实施例1中,主从向AXI总线功能通道子模块1.1的实现形式AXI总线写数据通道1.1.2;
AXI总线写数据通道1.1.2包括主时钟写数据通道信号缓存FIFO 4.1.2、主时钟写数据通道信号合并子单元5.1.2、从时钟写数据通道信号拆分子单元6.1.2、写数据主控制逻辑子单元7.1.2以及写数据从控制逻辑子单元8.1.2;
主时钟写数据通道信号缓存FIFO 4.1.2,用于将主模块2端以主时钟传输的写数据信号进行缓存,并提供给从模块3端以从时钟传输;
主时钟写数据通道信号合并子单元5.1.2,用于将主模块2端以主时钟传输的写数据并行信号合并,再提供给主时钟写数据通道信号缓存FIFO 4.1.2进行缓存;
从时钟写数据通道信号拆分子单元6.1.2,用于将主时钟写数据通道信号缓存FIFO 4.1.2缓存的写数据信号进行拆分,并将拆分后写数据信号以从时钟并行提供给从模块3端;
写数据主控制逻辑子单元7.1.2,用于控制主时钟写数据通道信号合并子单元5.1.2向主时钟写数据通道信号缓存FIFO 4.1.2的写入动作;
写数据从控制逻辑子单元8.1.2,用于控制从时钟写数据通道信号拆分子单元6.1.2向时钟写数据通道信号缓存FIFO 4.1.2的读取动作。
实施例5:
如图5所示,上述实施例1中,主从向AXI总线功能通道子模块1.1的实现形式包括AXI总线读地址通道1.1.3;
AXI总线读地址通道1.1.3包括主时钟读地址通道信号缓存FIFO 4.1.3、主时钟读地址通道信号合并子单元5.1.3、从时钟读地址通道信号拆分子单元6.1.3、读地址主控制逻辑子单元7.1.3以及读地址从控制逻辑子单元8.1.3;
主时钟读地址通道信号缓存FIFO 4.1.3,用于将主模块2端以主时钟传输的读地址信号进行缓存,并提供给从模块3端以从时钟传输;
主时钟读地址通道信号合并子单元5.1.3,用于将主模块2端以主时钟传输的读地址并行信号合并,再提供给主时钟读地址通道信号缓存FIFO 4.1.3进行缓存;
从时钟读地址通道信号拆分子单元6.1.3,用于将主时钟读地址通道信号缓存FIFO 4.1.1缓存的读地址信号进行拆分,并将拆分后读地址信号以从时钟并行提供给从模块3端;
读地址主控制逻辑子单元7.1.3,用于控制主时钟读地址通道信号合并子单元5.1.3向主时钟读地址通道信号缓存FIFO 4.1.3的写入动作;
读地址从控制逻辑子单元8.1.3,用于控制从时钟读地址通道信号拆分子单元6.1.3向主时钟读地址通道信号缓存FIFO 4.1.3的读取动作。
实施例6:
如图6所示,上述实施例2中,从主向AXI总线功能通道子模块1.2的实现形式包括AXI总线读数据通道1.2.1;
AXI总线读数据通道1.2.1包括从时钟读数据通道信号缓存FIFO 4.2.1、主时钟读数据通道信号拆分子单元5.2.1、从时钟读数据通道信号合并子单元6.2.1、读数据主控制逻辑子单元7.2.1以及读数据从控制逻辑子单元8.2.1;
从时钟读数据通道信号缓存FIFO 4.2.1,用于将从模块3端以从时钟传输的读数据信号进行缓存,并提供给主模块2端以主时钟传输;
从时钟读数据通道信号合并子单元6.2.1,用于将从模块3端以从时钟传输的读数据并行信号合并,再提供给从时钟读数据通道信号缓存FIFO 4.2.1进行缓存;
主时钟读数据通道信号拆分子单元5.2.1,用于将从时钟读数据通道信号缓存FIFO 4.2.1缓存的读数据信号进行拆分,并将拆分后信号以主时钟并行提供给主模块2端;
读数据从控制逻辑子单元8.2.1,用于控制从时钟读数据通道信号合并子单元6.2.1向从时钟读数据通道信号缓存FIFO 4.2.1的写入动作;
读数据主控制逻辑子单元7.2.1,用于控制主时钟读数据通道信号拆分子单元5.2.1向从时钟读数据通道信号缓存FIFO 4.2.1的读取动作。
实施例7:
如图7所示,上述实施例2中,从主向AXI总线功能通道子模块1.2的实现形式包括AXI总线写响应通道1.2.2;
AXI总线写响应通道1.2.2包括从时钟写响应通道信号缓存FIFO 4.2.2、主时钟写响应通道信号拆分子单元5.2.2、从时钟写响应通道信号合并子单元6.2.2、写响应主控制逻辑子单元7.2.2以及写响应从控制逻辑子单元8.2.2;
从时钟写响应通道信号缓存FIFO 4.2.2,用于将从模块3端以从时钟传输的写响应信号进行缓存,并提供给主模块2端以主时钟传输;
从时钟写响应通道信号合并子单元6.2.1,用于将从模块3端以从时钟传输的写响应并行信号合并,再提供给从时钟写响应通道信号缓存FIFO 4.2.2进行缓存;
主时钟写响应通道信号拆分子单元5.2.2,用于将从时钟写响应通道信号缓存FIFO 4.2.2缓存的写响应信号进行拆分,并将拆分后信号以主时钟并行提供给主模块2端;
写响应从控制逻辑子单元8.2.2,用于控制从时钟写响应通道信号合并子单元6.2.2向从时钟写响应通道信号缓存FIFO 4.2.2的写入动作;
写响应主控制逻辑子单元7.2.2,用于控制主时钟写响应通道信号拆分子单元5.2.2向从时钟写响应通道信号缓存FIFO 4.2.2的读取动作。
上述实施例例3-7,围绕异步fifo分别设计了AXI五个通道的跨时钟域结构,由于fifo内部结构优势,大大降低了跨时钟域过程中可能出错的概率;每个通道为数据位宽可配的接口,可以根据需求灵活运用于各种场景。
实施例8:
本发明提供一种基于权利要求2实现AXI总线跨时钟域的方法,包括如下步骤:
S1.主模块以主时钟向主从向AXI总线功能通道子模块写入数据或地址信号;
S2.主模块写入的数据或地址信号经主时钟功能通道信号合并子单元合并后,再通过主时钟功能通道信号缓存FIFO单元进行缓存,提供给从时钟功能通道信号拆分子单元进行拆分;
S3.从模块以从时钟自主从向AXI总线功能通道子模块读取从时钟功能通道信号拆分子单元拆分的数据或地址信号;
步骤S2中,主从向主控制逻辑子单元控制主时钟功能通道信号合并子单元向主时钟功能通道信号缓存FIFO单元的写入动作;如图8所示,具体步骤如下:
S21.主时钟功能通道信号合并子单元对主模块端以主时钟发送的数据或地址信号进行合并;
S22.主从向主控制逻辑子单元判断主模块端信号是否为有效的地址或数据信号;
若是,主从向主控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元开启写使能;进入步骤S23;
若否,返回步骤S21;
S23.主从向主控制逻辑子单元判断主时钟功能通道信号缓存FIFO单元是否是写满状态;
S24.若是,返回步骤S23;
若否,主时钟功能通道信号合并子单元向主时钟功能通道信号缓存FIFO单元执行写入动作后,主从向主控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;返回步骤S21;
步骤S2中,主从向从控制逻辑子单元控制从时钟功能通道信号拆分子单元向主时钟功能通道信号缓存FIFO单元的读取动作;如图9所示,具体步骤如下:
S25.主从向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元开启读使能;
S26.主从向从控制逻辑子单元判断主时钟功能通道信号缓存FIFO单元是否是读空状态;
S27.若是,返回步骤S26;
若否,从时钟功能通道信号拆分子单元从主时钟功能通道信号缓存FIFO单元执行读出动作后,主从向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;
S28.主从向从控制逻辑子单元判断从模块是否准备好获取地址或数据信号;
S29.若否,返回步骤S28;
若是,返回步骤S25。
实施例9:
本发明提供一种基于权利要求3实现AXI总线跨时钟域的方法,包括如下步骤:
S1A.从模块以从时钟向从主向AXI总线功能通道子模块写入数据或响应信号;
S2A.从模块写入的数据或响应信号经从时钟功能通道信号合并子单元合并后,再通过从时钟功能通道信号缓存FIFO单元进行缓存,提供给主时钟功能通道信号拆分子单元进行拆分;
S3A.主模块以主时钟自从主向AXI总线功能通道子模块读取主时钟功能通道信号拆分子单元拆分的数据或地址信号;
步骤S2A中,从主向从控制逻辑子单元控制从时钟功能通道信号合并子单元向从时钟功能通道信号缓存FIFO单元的写入动作;如图10所示,具体步骤如下:
S21A.从时钟功能通道信号合并子单元对从模块端以从时钟发送的数据或响应信号进行合并;
S22A.从主向从控制逻辑子单元判断从模块端信号是否为有效的数据或响应信号;
若是,从主向从控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元开启写使能;进入步骤S23A;
若否,返回步骤S21A;
S23A.从主向从控制逻辑子单元判断从时钟功能通道信号缓存FIFO单元是否是写满状态;
S24A.若是,返回步骤S23A;
若否,从时钟功能通道信号合并子单元向从时钟功能通道信号缓存FIFO单元执行写入动作后,从主向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;返回步骤S21A;
步骤S2A中,从主向主控制逻辑子单元控制主时钟功能通道信号拆分子单元向从时钟功能通道信号缓存FIFO单元的读取动作;如图11所示,具体步骤如下:
S25A.从主向主控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元开启读使能;
S26A.从主向主控制逻辑子单元判断从时钟功能通道信号缓存FIFO单元是否是读空状态;
S27A.若是,返回步骤S26;
若否,从时钟功能通道信号拆分子单元从从时钟功能通道信号缓存FIFO单元执行读出动作后,从主向主控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元关闭写使能;
S28A.从主向主控制逻辑子单元判断从模块是否准备好获取数据或响应信号;
S29A.若否,返回步骤S28A;
若是,返回步骤S25A。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种实现AXI总线跨时钟域的结构,其特征在于,包括AXI总线功能通道模块、主模块(2)和从模块(3),AXI总线功能通道模块与主模块(2)和从模块(3)均连接;
AXI总线功能通道模块包括功能通道信号缓存FIFO单元、主时钟功能通道信号串并转换单元、从时钟功能通道信号串并转换单元、主控制逻辑单元以及从控制逻辑单元;
功能通道信号缓存FIFO单元,用于实现主模块(2)和从模块(3)之间不同时钟信号的缓存;
主时钟功能通道信号串并转换单元,用于实现主模块(2)与功能通道信号缓存FIFO单元之间信号的串并转换;
从时钟功能通道信号串并转换单元,用于实现从模块(3)与功能通道信号缓存FIFO单元之间信号的串并转换;
主控制逻辑单元,用于控制主时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元进行的写入或读取动作;
从控制逻辑单元,用于控制从时钟功能通道信号串并转换单元向功能通道信号缓存FIFO单元进行的写入或读取动作。
2.如权利要求1所述的实现AXI总线跨时钟域的结构,其特征在于,AXI总线功能通道模块包括主从向AXI总线功能通道子模块(1.1);
主从向AXI总线功能通道子模块(1.1)包括主时钟功能通道信号缓存FIFO子单元(4.1)、主时钟功能通道信号合并子单元(5.1)、从时钟功能通道信号拆分子单元(6.1)、主从向主控制逻辑子单元(7.1)以及主从向从控制逻辑子单元(8.1);
主时钟功能通道信号缓存FIFO子单元(4.1),用于将主模块(2)端以主时钟传输的信号进行缓存,并提供给从模块(3)端以从时钟传输;
主时钟功能通道信号合并子单元(5.1),用于将主模块(2)端以主时钟传输的并行信号合并,再提供给主时钟功能通道信号缓存FIFO子单元(4.1)进行缓存;
从时钟功能通道信号拆分子单元(6.1),用于将主时钟功能通道信号缓存FIFO子单元(4.1)缓存的信号进行拆分,并将拆分后信号以从时钟并行提供给从模块(3)端;
主从向主控制逻辑子单元(7.1),用于控制主时钟功能通道信号合并子单元(5.1)向主时钟功能通道信号缓存FIFO子单元(4.1)的写入动作;
主从向从控制逻辑子单元(8.1),用于控制从时钟功能通道信号拆分子单元(6.1)向主时钟功能通道信号缓存FIFO子单元(4.1)的读取动作。
3.如权利要求2所述的实现AXI总线跨时钟域的结构,其特征在于,AXI总线功能通道模块还包括从主向AXI总线功能通道子模块(1.2);
从主向AXI总线功能通道子模块(1.2)包括从时钟功能通道信号缓存FIFO子单元(4.2)、主时钟功能通道信号拆分子单元(5.2)、从时钟功能通道信号合并子单元(6.2)、从主向主控制逻辑子单元(7.2)以及从主向从控制逻辑子单元(8.2);
从时钟功能通道信号缓存FIFO子单元(4.2),用于将从模块(3)端以从时钟传输的信号进行缓存,并提供给主模块(2)端以主时钟传输;
从时钟功能通道信号合并子单元(6.2),用于将从模块(3)端以从时钟传输的并行信号合并,再提供给从时钟功能通道信号缓存FIFO子单元(4.2)进行缓存;
主时钟功能通道信号拆分子单元(5.2),用于将从时钟功能通道信号缓存FIFO子单元(4.2)缓存的信号进行拆分,并将拆分后信号以主时钟并行提供给主模块(2)端;
从主向从控制逻辑子单元(8.2),用于控制从时钟功能通道信号合并子单元(6.2)向从时钟功能通道信号缓存FIFO子单元(4.2)的写入动作;
从主向主控制逻辑子单元(7.2),用于控制主时钟功能通道信号拆分子单元(5.2)向从时钟功能通道信号缓存FIFO子单元(4.2)的读取动作。
4.如权利要求2所述的实现AXI总线跨时钟域的结构,其特征在于,主从向AXI总线功能通道子模块(1.1)的实现形式包括AXI总线写地址通道(1.1.1)、AXI总线写数据通道(1.1.2)以及AXI总线读地址通道(1.1.3);
AXI总线写地址通道(1.1.1)包括主时钟写地址通道信号缓存FIFO(4.1.1)、主时钟写地址通道信号合并子单元(5.1.1)、从时钟写地址通道信号拆分子单元(6.1.1)、写地址主控制逻辑子单元(7.1.1)以及写地址从控制逻辑子单元(8.1.1);
主时钟写地址通道信号缓存FIFO(4.1.1),用于将主模块(2)端以主时钟传输的写地址信号进行缓存,并提供给从模块(3)端以从时钟传输;
主时钟写地址通道信号合并子单元(5.1.1),用于将主模块(2)端以主时钟传输的写地址并行信号合并,再提供给主时钟写地址通道信号缓存FIFO(4.1.1)进行缓存;
从时钟写地址通道信号拆分子单元(6.1.1),用于将主时钟写地址通道信号缓存FIFO(4.1.1)缓存的写地址信号进行拆分,并将拆分后写地址信号以从时钟并行提供给从模块(3)端;
写地址主控制逻辑子单元(7.1.1),用于控制主时钟写地址通道信号合并子单元(5.1.1)向主时钟写地址通道信号缓存FIFO(4.1.1)的写入动作;
写地址从控制逻辑子单元(8.1.1),用于控制从时钟写地址通道信号拆分子单元(6.1.1)向时钟写地址通道信号缓存FIFO(4.1.1)的读取动作;
AXI总线写数据通道(1.1.2)包括主时钟写数据通道信号缓存FIFO(4.1.2)、主时钟写数据通道信号合并子单元(5.1.2)、从时钟写数据通道信号拆分子单元(6.1.2)、写数据主控制逻辑子单元(7.1.2)以及写数据从控制逻辑子单元(8.1.2);
主时钟写数据通道信号缓存FIFO(4.1.2),用于将主模块(2)端以主时钟传输的写数据信号进行缓存,并提供给从模块(3)端以从时钟传输;
主时钟写数据通道信号合并子单元(5.1.2),用于将主模块(2)端以主时钟传输的写数据并行信号合并,再提供给主时钟写数据通道信号缓存FIFO(4.1.2)进行缓存;
从时钟写数据通道信号拆分子单元(6.1.2),用于将主时钟写数据通道信号缓存FIFO(4.1.2)缓存的写数据信号进行拆分,并将拆分后写数据信号以从时钟并行提供给从模块(3)端;
写数据主控制逻辑子单元(7.1.2),用于控制主时钟写数据通道信号合并子单元(5.1.2)向主时钟写数据通道信号缓存FIFO(4.1.2)的写入动作;
写数据从控制逻辑子单元(8.1.2),用于控制从时钟写数据通道信号拆分子单元(6.1.2)向时钟写数据通道信号缓存FIFO(4.1.2)的读取动作;
AXI总线读地址通道(1.1.3)包括主时钟读地址通道信号缓存FIFO(4.1.3)、主时钟读地址通道信号合并子单元(5.1.3)、从时钟读地址通道信号拆分子单元(6.1.3)、读地址主控制逻辑子单元(7.1.3)以及读地址从控制逻辑子单元(8.1.3);
主时钟读地址通道信号缓存FIFO(4.1.3),用于将主模块(2)端以主时钟传输的读地址信号进行缓存,并提供给从模块(3)端以从时钟传输;
主时钟读地址通道信号合并子单元(5.1.3),用于将主模块(2)端以主时钟传输的读地址并行信号合并,再提供给主时钟读地址通道信号缓存FIFO(4.1.3)进行缓存;
从时钟读地址通道信号拆分子单元(6.1.3),用于将主时钟读地址通道信号缓存FIFO(4.1.1)缓存的读地址信号进行拆分,并将拆分后读地址信号以从时钟并行提供给从模块(3)端;
读地址主控制逻辑子单元(7.1.3),用于控制主时钟读地址通道信号合并子单元(5.1.3)向主时钟读地址通道信号缓存FIFO(4.1.3)的写入动作;
读地址从控制逻辑子单元(8.1.3),用于控制从时钟读地址通道信号拆分子单元(6.1.3)向主时钟读地址通道信号缓存FIFO(4.1.3)的读取动作。
5.如权利要求3所述的实现AXI总线跨时钟域的结构,其特征在于,从主向AXI总线功能通道子模块(1.2)的实现形式包括AXI总线读数据通道(1.2.1)、AXI总线写响应通道(1.2.2);
AXI总线读数据通道(1.2.1)包括从时钟读数据通道信号缓存FIFO(4.2.1)、主时钟读数据通道信号拆分子单元(5.2.1)、从时钟读数据通道信号合并子单元(6.2.1)、读数据主控制逻辑子单元(7.2.1)以及读数据从控制逻辑子单元(8.2.1);
从时钟读数据通道信号缓存FIFO(4.2.1),用于将从模块(3)端以从时钟传输的读数据信号进行缓存,并提供给主模块(2)端以主时钟传输;
从时钟读数据通道信号合并子单元(6.2.1),用于将从模块(3)端以从时钟传输的读数据并行信号合并,再提供给从时钟读数据通道信号缓存FIFO(4.2.1)进行缓存;
主时钟读数据通道信号拆分子单元(5.2.1),用于将从时钟读数据通道信号缓存FIFO(4.2.1)缓存的读数据信号进行拆分,并将拆分后信号以主时钟并行提供给主模块(2)端;
读数据从控制逻辑子单元(8.2.1),用于控制从时钟读数据通道信号合并子单元(6.2.1)向从时钟读数据通道信号缓存FIFO(4.2.1)的写入动作;
读数据主控制逻辑子单元(7.2.1),用于控制主时钟读数据通道信号拆分子单元(5.2.1)向从时钟读数据通道信号缓存FIFO(4.2.1)的读取动作;
AXI总线写响应通道(1.2.2)包括从时钟写响应通道信号缓存FIFO(4.2.2)、主时钟写响应通道信号拆分子单元(5.2.2)、从时钟写响应通道信号合并子单元(6.2.2)、写响应主控制逻辑子单元(7.2.2)以及写响应从控制逻辑子单元(8.2.2);
从时钟写响应通道信号缓存FIFO(4.2.2),用于将从模块(3)端以从时钟传输的写响应信号进行缓存,并提供给主模块(2)端以主时钟传输;
从时钟写响应通道信号合并子单元(6.2.1),用于将从模块(3)端以从时钟传输的写响应并行信号合并,再提供给从时钟写响应通道信号缓存FIFO(4.2.2)进行缓存;
主时钟写响应通道信号拆分子单元(5.2.2),用于将从时钟写响应通道信号缓存FIFO(4.2.2)缓存的写响应信号进行拆分,并将拆分后信号以主时钟并行提供给主模块(2)端;
写响应从控制逻辑子单元(8.2.2),用于控制从时钟写响应通道信号合并子单元(6.2.2)向从时钟写响应通道信号缓存FIFO(4.2.2)的写入动作;
写响应主控制逻辑子单元(7.2.2),用于控制主时钟写响应通道信号拆分子单元(5.2.2)向从时钟写响应通道信号缓存FIFO(4.2.2)的读取动作。
6.一种实现AXI总线跨时钟域的方法,基于如权利要求2所述的实现AXI总线跨时钟域的结构,其特征在于,包括如下步骤:
S1.主模块以主时钟向主从向AXI总线功能通道子模块写入数据或地址信号;
S2.主模块写入的数据或地址信号经主时钟功能通道信号合并子单元合并后,再通过主时钟功能通道信号缓存FIFO单元进行缓存,提供给从时钟功能通道信号拆分子单元进行拆分;
S3.从模块以从时钟自主从向AXI总线功能通道子模块读取从时钟功能通道信号拆分子单元拆分的数据或地址信号。
7.如权利要求6所述的实现AXI总线跨时钟域的方法,其特征在于,步骤S2中,主从向主控制逻辑子单元控制主时钟功能通道信号合并子单元向主时钟功能通道信号缓存FIFO单元的写入动作;具体步骤如下:
S21.主时钟功能通道信号合并子单元对主模块端以主时钟发送的数据或地址信号进行合并;
S22.主从向主控制逻辑子单元判断主模块端信号是否为有效的地址或数据信号;
若是,主从向主控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元开启写使能;进入步骤S23;
若否,返回步骤S21;
S23.主从向主控制逻辑子单元判断主时钟功能通道信号缓存FIFO单元是否是写满状态;
S24.若是,返回步骤S23;
若否,主时钟功能通道信号合并子单元向主时钟功能通道信号缓存FIFO单元执行写入动作后,主从向主控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;返回步骤S21。
8.如权利要求7所述的实现AXI总线跨时钟域的方法,其特征在于,步骤S2中,主从向从控制逻辑子单元控制从时钟功能通道信号拆分子单元向主时钟功能通道信号缓存FIFO单元的读取动作;
具体步骤如下:
S25.主从向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元开启读使能;
S26.主从向从控制逻辑子单元判断主时钟功能通道信号缓存FIFO单元是否是读空状态;
S27.若是,返回步骤S26;
若否,从时钟功能通道信号拆分子单元从主时钟功能通道信号缓存FIFO单元执行读出动作后,主从向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;
S28.主从向从控制逻辑子单元判断从模块是否准备好获取地址或数据信号;
S29.若否,返回步骤S28;
若是,返回步骤S25。
9.一种实现AXI总线跨时钟域的方法,基于如权利要求3所述的实现AXI总线跨时钟域的结构,其特征在于,包括如下步骤:
S1A.从模块以从时钟向从主向AXI总线功能通道子模块写入数据或响应信号;
S2A.从模块写入的数据或响应信号经从时钟功能通道信号合并子单元合并后,再通过从时钟功能通道信号缓存FIFO单元进行缓存,提供给主时钟功能通道信号拆分子单元进行拆分;
S3A.主模块以主时钟自从主向AXI总线功能通道子模块读取主时钟功能通道信号拆分子单元拆分的数据或地址信号。
10.如权利要求9所述的实现AXI总线跨时钟域的方法,其特征在于,步骤S2A中,从主向从控制逻辑子单元控制从时钟功能通道信号合并子单元向从时钟功能通道信号缓存FIFO单元的写入动作;具体步骤如下:
S21A.从时钟功能通道信号合并子单元对从模块端以从时钟发送的数据或响应信号进行合并;
S22A.从主向从控制逻辑子单元判断从模块端信号是否为有效的数据或响应信号;
若是,从主向从控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元开启写使能;进入步骤S23A;
若否,返回步骤S21A;
S23A.从主向从控制逻辑子单元判断从时钟功能通道信号缓存FIFO单元是否是写满状态;
S24A.若是,返回步骤S23A;
若否,从时钟功能通道信号合并子单元向从时钟功能通道信号缓存FIFO单元执行写入动作后,从主向从控制逻辑子单元控制主时钟功能通道信号缓存FIFO单元关闭写使能;返回步骤S21A;
步骤S2A中,从主向主控制逻辑子单元控制主时钟功能通道信号拆分子单元向从时钟功能通道信号缓存FIFO单元的读取动作;
具体步骤如下:
S25A.从主向主控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元开启读使能;
S26A.从主向主控制逻辑子单元判断从时钟功能通道信号缓存FIFO单元是否是读空状态;
S27A.若是,返回步骤S26;
若否,从时钟功能通道信号拆分子单元从从时钟功能通道信号缓存FIFO单元执行读出动作后,从主向主控制逻辑子单元控制从时钟功能通道信号缓存FIFO单元关闭写使能;
S28A.从主向主控制逻辑子单元判断从模块是否准备好获取数据或响应信号;
S29A.若否,返回步骤S28A;
若是,返回步骤S25A。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010063296.7A CN111291524B (zh) | 2020-01-19 | 2020-01-19 | 一种实现axi总线跨时钟域的结构及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010063296.7A CN111291524B (zh) | 2020-01-19 | 2020-01-19 | 一种实现axi总线跨时钟域的结构及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111291524A CN111291524A (zh) | 2020-06-16 |
CN111291524B true CN111291524B (zh) | 2022-10-18 |
Family
ID=71028380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010063296.7A Active CN111291524B (zh) | 2020-01-19 | 2020-01-19 | 一种实现axi总线跨时钟域的结构及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111291524B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306924A (zh) * | 2020-11-26 | 2021-02-02 | 山东云海国创云计算装备产业创新中心有限公司 | 一种数据交互方法、装置、系统及可读存储介质 |
CN117349214B (zh) * | 2023-12-05 | 2024-02-09 | 天津国芯科技有限公司 | 一种具备拆包组包能力的axi协议转串行通讯协议的转换桥 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468547B (zh) * | 2015-11-18 | 2018-07-06 | 哈尔滨工业大学 | 一种基于axi总线的便捷可配置帧数据存取控制系统 |
CN106909524B (zh) * | 2017-03-17 | 2019-09-10 | 数据通信科学技术研究所 | 一种片上系统及其通信交互方法 |
CN110704351A (zh) * | 2019-09-24 | 2020-01-17 | 山东华芯半导体有限公司 | 基于axi总线的主机设备数据传输扩展方法 |
-
2020
- 2020-01-19 CN CN202010063296.7A patent/CN111291524B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111291524A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10318468B2 (en) | FPGA-based interface signal remapping method | |
WO2016192217A1 (zh) | 一种apb总线桥 | |
CN111291524B (zh) | 一种实现axi总线跨时钟域的结构及方法 | |
CN111832240B (zh) | Fifo数据传输方法及fifo存储装置 | |
CN104714907B (zh) | 一种pci总线转换为isa和apb总线设计方法 | |
US6366973B1 (en) | Slave interface circuit for providing communication between a peripheral component interconnect (PCI) domain and an advanced system bus (ASB) | |
CN111666248A (zh) | 基于fpga的rs422串口通讯控制系统及方法 | |
US6957399B2 (en) | Controlling the propagation of a digital signal by means of variable I/O delay compensation using delay-tracking | |
TWI291624B (en) | Method and device for transferring data and data transfer bridge | |
CN204390227U (zh) | 计算设备扩展装置、以及可扩展的计算系统 | |
US11127442B2 (en) | Data transfers between a memory and a distributed compute array | |
CN110008162B (zh) | 一种缓冲接口电路及基于该电路传输数据的方法和应用 | |
CN102722457A (zh) | 总线接口转换方法及总线桥接装置 | |
CN109144927B (zh) | 一种多fpga互联装置 | |
CN107562673B (zh) | 一种应用于嵌入处理器总线协议转换桥接装置 | |
CN111324562B (zh) | 一种ahb总线跨时钟域的系统及工作方法 | |
Ning et al. | Design of a GALS Wrapper for Network on Chip | |
JP2004326222A (ja) | データ処理システム | |
CN219916336U (zh) | Lpc接口至axi总线协议桥接器 | |
CN117312210B (zh) | 一种通用扩展risc-v处理器性能的方法 | |
CN219179825U (zh) | 时间去偏差电路、系统及电子设备 | |
JPH07146842A (ja) | バスインターフェース回路 | |
CN117609137A (zh) | 一种基于复杂片内多种高速接口通信测试系统 | |
Salman et al. | High Performance and Low Power Axi-Lite 4 Master Controller Using System Verilog | |
CN111339012A (zh) | 一种处理器系统总线结构和系统 |
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 |