一种用于可配置位宽ram的写入路径选择及控制电路的制作方法

文档序号:6765290阅读:208来源:国知局
一种用于可配置位宽ram的写入路径选择及控制电路的制作方法
【专利摘要】本发明公开了一种用于可配置位宽RAM的写入路径选择及控制电路,该电路包括:位宽配置译码电路、地址使能译码电路、地址采样电路、地址跳转电路、路径选择控制电路以及写入路径选择电路。采用了可配置的电路设计控制写入路径的位宽,即RAM的写入路径的位宽可以根据配置信号来决定。这样是得RAM可以更加方便的应用与FPGA等可配置器件中。本发明的写入路径的可配置位宽的最大位数可达到32位,扩展了RAM的实用范围,使得RAM具有了快速写入数据的功能。
【专利说明】—种用于可配置位宽RAM的写入路径选择及控制电路
【技术领域】
[0001]本发明涉及电路设计领域,特别涉及一种用于可配置位宽RAM的写入路径选择及控制电路。
【背景技术】
[0002]众所周知,现场可编程门阵列(FPGA)由于具有用户可编程性和低开发成本的优点,使其成为实现现代电路和系统的一种重要技术被广泛应用,而RAM是FPGA中的重要集成资源,其中存储了所用的程序数据,在工作过程中需要从RAM中读取数据。现有RAM都为一固定位宽的RAM,这就导致RAM的实用范围较小,必须以对应位宽来写入数据,既影响了RAM的写入数据的速度,也局限了 RAM使用的范围。

【发明内容】

[0003]本发明要解决的技术问题是提供一种对于最大位宽为32位的可配置位宽RAM的写入路径选择及控制电路,以解决最大为32位位宽的可配置位宽RAM的电路设计问题,可极大提高RAM的写入速度以及使用范围。
[0004]为了解决以上技术问题,本发明提供一种用于可配置位宽RAM的写入路径选择及控制电路,其中,包括:
[0005]地址采样电路,用来接收地址输入信号,并输出采样地址信号;
[0006]地址使能译码电路,接收配置信号,并根据配置信号译码出地址信号对应位的地址使能信号;
[0007]位宽配置译码电路,接收配置信号,并根据配置信号输出位宽控制信号;
[0008]地址跳转电路,接收采样地址信号以及地址信号对应位的使能信号,并根据所述采样地址信号以及所述地址信号对应位的使能信号输出32位的写使能信号;
[0009]路径选择控制电路,根据所述地址跳转电路输出的32位的写使能信号和所述位宽配置译码电路输出的位宽控制有效信号,输出32对互补的路径选择控制信号;
[0010]读取路径选择电路,根据路径选择控制信号,将32位的写入数据配置位宽进行输入给RAM。
[0011]优选的,地址采样电路为一个D触发器组,所述D触发器组包括5个D触发器,根据地址elk信号以及地址信号,所述D触发器组输出采样地址信号,所述采样地址信号包括时钟采样后的同相信号和时钟采样后的反相信号。
[0012]优选的,所述配置信号为三组配置输入信号,所述地址使能译码电路包括三输入或非门、二输入与门、非门、二输入与非门、二输入或门、两个二输入或非门和五个驱动器,所述地址使能信号根据配置信号的不同分别控制对应位的地址信号是否有效。
[0013]优选的,所述配置信号为三组配置输入信号,所述位宽配置译码电路包括三个反相器和六个三输入与门,所述三输入与门根据所述配置信号输出位宽控制信号。
[0014]优选的,所述地址跳转电路包括32个写使能信号输出端,地址跳转电路的每个输出端均为地址采样信号(或者其反相信号)分别与对应位的地址使能信号的与非输出后的
与信号。
[0015]优选的,路径选择控制电路包括32对输出端,每对输出端输出互补的路径选择控制信号,每对互补的路径选择控制信号互为反相信号,每个路径选择信号均为对应的写使能信号与位宽控制信号逻辑运算后的结果。
[0016]优选的,写入路径选择电路包括写入数据信号输出端、写入数据输入端和设于所述所述写入数据信号输入端与所述写入数据信号输出端之间的传输门,所述传输门两端的连通受控于路径选择控制信号。
[0017]采用了可配置的电路设计,利用地址使能译码电路以及位宽配置译码电路将配置信号转换为地址使能信号与位宽控制有效信号,再通过地址跳转电路将地址信号与地址使能信号转换为写使能信号,最后通过路径选择控制电路根据写使能信号与位宽控制有效信号输出路径选择控制信号并控制写入路径选择电路中的传输们,从而控制写入路径的位宽,即RAM的写入路径的位宽可以根据配置信号来决定。这样是得RAM可以更加方便的应用与FPGA等可配置器件中。本发明的读取路径的可配置位宽的最大位数可达到32位,扩展了 RAM的实用范围,使得RAM具有了快速写入数据的功能。
【专利附图】

【附图说明】
[0018]下面结合附图和【具体实施方式】对本发明作进一步的详细说明:
[0019]图1是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的电路原理框图;
[0020]图2是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的地址采样电路的电路不意图;
[0021]图3是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的地址使能译码电路的电路原理示意图;
[0022]图4是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的配置位宽译码电路的电路原理示意图;
[0023]图5是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的地址跳转电路的电路原理不意图;
[0024]图6是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的路径选择控制电路的电路原理不意图;
[0025]图7是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的写入路径选择电路的电路原理示意图;
[0026]图8是本发明的用于可配置位宽RAM的写入路径选择及控制电路实施例的配置信号真值表图。
【具体实施方式】
[0027]为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的【具体实施方式】做详细的说明,使本发明的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按比例绘制附图,重点在于示出本发明的主旨。
[0028]如图1所示,本发明提供一种用于可配置位宽RAM的写入路径选择及控制电路,其中,包括:地址采样电路101,用来接收地址输入信号,并输出采样地址信号;地址使能译码电路103,接收配置信号,并根据配置信号译码出地址信号对应位的地址使能信号;位宽配置译码电路104,接收配置信号,并根据配置信号输出位宽控制信号;位宽配置译码电路104根据配置信号输出位宽分别为1、2、4、8、16、32的位宽控制信号;地址跳转电路102,接收采样地址信号以及地址信号对应位的使能信号,并根据所述采样地址信号以及所述地址信号对应位的使能信号输出32位的写使能信号;路径选择控制电路105,根据所述地址跳转电路输出的32位的写使能信号和所述位宽配置译码电路输出的位宽控制有效信号,输出32对互补的路径选择控制信号;写入路径选择电路106,根据路径选择控制信号,将32位的写入数据配置位宽进行输出,写入路径选择电路106根据路径选择控制信号将32位的写入数据输入端的低I位、或者低2位、或者低4位、或者低8位、或者低16位、或者低32位与写入数据输出端连接。
[0029]输入到地址采样电路101输入端107的5位地址信号addr〈4:0>,输入到地址采样电路101输入端108的I位地址Clk信号,输入到地址使能译码电路103与位宽配置译码电路104的输入端109的3位配置信号cfgbit〈2:0>。
[0030]地址采样电路101通过其输出端112输出到地址跳转电路102的信号为5位信号addrq〈4: 0>和addrqn〈4: 0>,地址使能译码电路103输出到地址跳转电路102的信号为5位addren〈4:0>,地址跳转电路102输出到路径选择控制电路105的信号为32位wren〈31: 0>,位宽配置译码电路104输出到路径选择控制电路105的信号为6个位宽选择信号wl、w2、w4、w8、wl6、w32,路径选择控制电路105输出到读取路径选择电路106的两组32位信号mux〈31:0> 和 muxn〈31:0>。
[0031]该电路可以用于位宽为1、2、4、8、16、32的可配置位宽RAM,即可以根据配置信号109和地址信号107决定将写入数据输入端的最低I位dil〈0>分别连接到32位写入数据输出端dir〈31:0>,即I位位宽;或者根据配置信号109和地址信号107决定将写入数据输入端的最低2位dil〈l:0>分别连接到32位写入数据输出端dir〈31:0>,即2位位宽;或者根据配置信号109和地址信号107决定将写入数据输入端的最低4位dil〈3:0>分别连接到32位写入数据输出端dir〈31: 0>,即4位位宽;或者根据配置信号109和地址信号107决定将写入数据输入端的最低8位dil〈7:0>分别连接到32位写入数据输出端dirr〈31:0>、即8位位宽;或者根据配置信号109和地址信号107决定将写入数据输入端的最低16位dil<15:0>分别连接到32位写入数据输出端dir〈31:0>,即16位位宽;或者根据配置信号109和地址信号107决定将写入数据输入端的32位dil〈31:0>连接到32位写入数据输出端dir〈31:0>,即32位位宽。
[0032]如图2所示,地址采样电路为一个D触发器组201,所述D触发器组201包括5个D触发器,根据地址elk信号203以及地址信号202,所述D触发器组输出采样地址信号,所述米样地址信号包括时钟米样后的同相信号addrq〈4: 0>和时钟米样后的反相信号addrqn<4:0>o
[0033]所述配置信号为三组配置输入信号,所述地址使能译码电路包括三输入或非门、二输入与门、非门、二输入与非门、二输入或门、两个二输入或非门和五个驱动器,所述地址使能信号根据配置信号的不同分别控制对应位的地址信号是否有效。如图3所示,在本实施例中,301为配置信号输入cfgbit〈2>,302为配置信号输入cfgbit〈l>,303为配置信号输入cfgbit〈0>。301,302和303经过三输入或非门309和驱动器310后生成I位地址使能信号addren〈0> ;301、302经过二输入或非门311和驱动器312后生成I位地址使能信号addren〈l> ;302和303经过二输入与门313后和301共同输入二输入或非门314后,经过驱动器315后生成I位地址使能信号addren〈2> ;301经过非门316和驱动器317后生成I位地址使能信号addren〈3> ;302和303经过二输入或门318后和301共同输入二输入与非门319后,经过驱动器320后生成I位地址使能信号addren〈4>,地址使能信号addren〈4:0>根据配置信号的不同分别控制对应位的地址信号是否有效。配置信号与地址使能信号的对应关系见图 8,cfgbit〈2:0> 为“000” 时,addren〈4:0> 为“lllll”;cfgbit〈2:0> 为“001” 时,addren〈4:0> 为“11110”;cfgbit〈2:0> 为“010” 时,addren<4:0> 为“11100”;cfgbit〈2:0>为 “ 011” 时,addren<4: 0> 为 “ 11000 ” ; cfgb i t〈2: 0> 为 “ 100 ” 时,addren<4: 0> 为“ 10000 ” ;cfgbit<2:0> 为 “101” 时,addren〈4:0> 为 “00000”。
[0034]所述配置信号为三组配置输入信号,所述位宽配置译码电路包括三个反相器和六个三输入与门,所述三输入与门根据所述配置信号输出位宽控制信号。如图4所示,401为配置信号输入cfgbit〈2>,402为配置信号输入cfgbit〈l>,403为配置信号输入cfgbit〈0>。401经过反相器410后生成401的反相信号,402经过反相器411后生成402的反相信号,403经过反相器412后生成403的反相信号。401的反相信号、402的反相信号以及403的反相信号,经过三输入与门413后生成位宽控制信号wl,wl表示I位位宽模式有效;401的反相信号、402的反相信号以及403,经过三输入与门414后生成位宽控制信号w2,《2表示2位位宽模式有效;401的反相信号、402以及403的反相信号,经过三输入与门415后生成位宽控制信号w4,w4表示4位位宽模式有效;401的反相信号、402以及403经过三输入与门416后生成位宽控制信号w8,w8表示8位位宽模式有效;401、402的反相信号以及403的反相信号,经过三输入与门417后生成位宽控制信号《16,《16表示16位位宽模式有效;401、402的反相信号以及403,经过三输入与门418后生成位宽控制信号w32,w32表示32位位宽模式有效。配置信号与位宽控`制信号的对应关系见图8,cfgbit〈2:0>为“000”时,wl有效;cfgbit<2:0> 为 “001” 时,w2 有效;cfgbit〈2:0> 为 “010” 时,w4 有效;cfgbit<2:0> 为“011” 时,w8 有效;cfgbit<2:0> 为 “100” 时,wl6 有效;cfgbit<2:0> 为 “101” 时,w32 有效。
[0035]所述地址跳转电路包括32个写使能信号输出端,地址跳转电路的每个输出端均为地址采样信号(或者其反相信号)分别与对应位的地址使能信号的与非输出后的与信号。如图5所示,在本实施例中,地址跳转电路的输出端包括500~531,即wren〈0>~wren〈31>,均为高有效;输入端包括en〈4:0>、q〈4:0>和qn〈4:0>。其中en〈4:0>对应的是图1中的信号addren〈4:0> ;q〈4:0>对应的是图1中的信号addrq〈4:0> ;qn〈4:0>对应的是图1中的信号addrqn〈4:0>。地址跳转电路的每个输出端wren〈i> (i=0, I…31),均为5位地址信号(或者反相信号)分别与对应位的使能信号的与非输出的与信号。
[0036]500是由“q〈4>q〈3>q〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0037]501是由“q〈4>q〈3>q〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0038]502是由“q〈4>q〈3>q〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的
与信号;
[0039]503是由“q〈4>q〈3>q〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0040]504是由“q〈4>q〈3>qn〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的
与信号;
[0041]505是由“q〈4>q〈3>qn〈2>q〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0042]506是由“q〈4>q〈3>qn〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0043]507是由“q〈4>q〈3>qn〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0044]508是由“q〈4>qn〈3>q〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的
与信号;
[0045]509是由“q〈4>qn〈3>q〈2>q〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0046]510是由“q〈4>qn〈3>q〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0047]511是由“q〈4>qn〈3>q〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0048]512是由“q〈4>qn〈3>qn〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0049]513是由“q〈4>qn〈3>qn〈2>q〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0050]514是由“q〈4>qn〈3>qn〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0051]515是由“q〈4>qn〈3>qn〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0052]516是由“qn〈4>q〈3>q〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的
与信号;
[0053]517是由“qn〈4>q〈3>q〈2>q〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0054]518是由“qn〈4>q〈3>q〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0055]519是由“q〈4>nq〈3>q〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0056]520是由“qn〈4>q〈3>qn〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;[0057]521是由“qn〈4>q〈3>qn〈2>q〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0058]522是由“qn〈4>q〈3>qn〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0059]523是由“qn〈4>q〈3>qn〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0060]524是由“qn〈4>qn〈3>q〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0061]525是由“qn〈4>qn〈3>q〈2>q〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0062]526是由“qn〈4>qn〈3>q〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0063]527是由“qn〈4>qn〈3>q〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0064]528是由“qn〈4>qn〈3>qn〈2>q〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0065]529是由“qn〈4>qn〈3>qn〈2>q〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0066]530是由“qn〈4>qn〈3>qn〈2>qn〈l>q〈0>”分别和对应位的地址使能信号的与非输出的与信号;
[0067]531是由“qn〈4>qn〈3>qn〈2>qn〈l>qn〈0>”分别和对应位的地址使能信号的与非输出的与信号。
[0068]路径选择控制电路包括32对输出端,每对输出端输出互补的路径选择控制信号,每对互补的路径选择控制信号互为反相信号,每个路径选择信号均为对应的写使能信号与位宽控制信号逻辑运算后的结果。如图6所示,地址跳转电路的输出端包括600?631,即mux<0:31>,以及相应位的反相信号632?663,即muxn〈0:31>,均为高有效;其中muxn〈i>是mux〈i>的反相信号。输入端包括wren〈31:0>,对应的是图1中的连线信号wren〈31: O〉,以及位宽控制信号wl、w2、w4、w8、wl6> w32, w32。
[0069]Mux<0>是“wren〈0>和wl的与非结果”和“wren〈0>和w2的与非结果”和“wren〈0>和w4的与非结果”和“wren〈0>和w8的与非结果”和“wren〈0>和wl6的与非结果”和“w32的非结果”的与非结果;
[0070]mux〈l>是“wren〈16>和wl的与非结果”和“wren〈16>和w2的与非结果”和“wren〈16>和w4的与非结果”和“wren〈16>和w8的与非结果”和“wren〈16>和wl6的与非结果”的与非结果;
[0071]mux<2>是“wren〈8>和wl的与非结果”和“wren〈8>和w2的与非结果”和“wren〈8>和w4的与非结果”和“wren〈8>和w8的与非结果”的与非结果;
[0072]mux<3>是“wren〈24>和wl的与非结果”和“wren〈24>和w2的与非结果”和“wren〈24>和w4的与非结果”和“wren〈24>和w8的与非结果”的与非结果;
[0073]mux<4>是“wren〈4>和wl的与非结果”和“wren〈4>和w2的与非结果”和“wren〈4>和w4的与非结果”的与非结果;
[0074]mux<5>是“wren〈20>和wl的与非结果”和“wren〈20>和w2的与非结果”和“wren〈20>和w4的与非结果”的与非结果;
[0075]mux<6>是“wren〈12>和wl的与非结果”和“wren〈12>和w2的与非结果”和“wren〈12>和w4的与非结果”的与非结果;
[0076]mux<7>是“wren〈28>和wl的与非结果”和“wren〈28>和w2的与非结果”和“wren〈28>和w4的与非结果”的与非结果;
[0077]mux〈8>是“wren〈2>和wl的与非结果”和“wren〈2>和w2的与非结果”的与非结果;
[0078]mux〈9>是“wren〈18>和wl的与非结果”和“wren〈18>和w2的与非结果”的与非
结果;
[0079]mux〈10>是“wren〈10>和wl的与非结果”和“wren〈10>和w2的与非结果”的与非
结果;
[0080]mux<ll>是“wren〈26>和wl的与非结果”和“wren〈26>和w2的与非结果”的与非
结果;
[0081]mux〈12>是“wren〈6>和wl的与非结果”和“wren〈6>和w2的与非结果”的与非结果;
[0082]mux<13>是“wren〈22>和wl的与非结果”和“wren〈22>和w2的与非结果”的与非
结果;
[0083]mux<14>是“wren〈14>和wl的与非结果”和“wren〈14>和w2的与非结果”的与非结果;
[0084]mux<15>是“wren〈30>和wl的与非结果”和“wren〈30>和w2的与非结果”的与非
结果;
[0085]mux<16> 是 wren〈l> 和 wl 的与结果;
[0086]mux<17> 是 wren〈l7> 和 wl 的与结果;
[0087]mux<18> 是 wren〈9> 和 wl 的与结果;
[0088]mux<19> 是 wren〈25> 和 wl 的与结果;
[0089]mux<20> 是 wren〈5> 和 wl 的与结果;
[0090]mux〈21> 是 wren〈21> 和 wl 的与结果;
[0091]mux〈22> 是 wren〈13> 和 wl 的与结果;
[0092]mux<23> 是 wren〈29> 和 wl 的与结果;
[0093]mux<24> 是 wren〈3> 和 wl 的与结果;
[0094]mux<25> 是 wren〈19> 和 wl 的与结果;
[0095]mux〈26> 是 wren〈ll> 和 wl 的与结果;
[0096]mux<27> 是 wren〈27> 和 wl 的与结果;
[0097]mux<28> 是 wren〈7> 和 wl 的与结果;
[0098]mux<29> 是 wren〈23> 和 wl 的与结果;
[0099]mux〈30> 是 wren〈15> 和 wl 的与结果;
[0100]mux〈31> 是 wren〈31> 和 wl 的与结果。[0101]写入路径选择电路包括写入数据信号输出端、写入数据输入端和设于所述所述写入数据信号输入端与所述写入数据信号输出端之间的传输门,所述传输门两端的连通受控于路径选择控制信号。写入路径选择电路的结构如图7所示,因为写入路径选择电路的结构相对复杂,所以在图7中用多图描述该电路,多图中同样名称的线表示为连接在一起的同一个线,多图所描述的各个电路均为写入路径选择电路的一部分,同时存在于写入路径选择电路中。
[0102]图7 (a)所示为在写入路径选择电路中mux〈0> (或muxn〈0>)信号所控制的部分。其中700~731表示写入数据输入端信号dil〈0>~dil〈31> ;732~763表示写入数据输出端信号dir〈0>~dir〈31> ;764表示受mux〈0>和muxn〈0>信号控制的传输门,mux〈0>为I时,传输门两端的连线连接在一起,mux〈0>为O时,传输门两端的连线不连接。在此约定,在图7中出现的传输门均受到mux〈i>和muxn〈i>的控制(i=0, I....31),且当mux〈i>为I时,传输门两端的连线连接在一起,mux〈i>为O时,传输门两端的连线不连接。如图7 (a)所示,当mux〈0>为I时,dil〈31:0>与dir〈31:0>对位顺序——连接。
[0103]图7 (b)所示为在写入路径选择电路中mux〈l> (muxn〈l>)、mux〈2> (muxn〈2>)和mux<3> (muxn〈3>)信号所控制的部分。
[0104]765 为 mux〈l> (muxn<l>)所控制的电路,当 mux〈l> 为 I 时,dil〈15:0> 与dir<31:16> 对位顺序--连接,当 mux〈l> 为 O 时,dil〈15:0> 与 dir〈31:16> 不连接;
[0105]766 为 1111?〈2>(1]11?11〈2>)所控制的电路,当 mux〈2> 为 I 时,dil<7:0> 与 dir<15:8>对位顺序--连接,当mux〈2>为O时,dil〈7:0>与dir〈15:8>不连接;
[0106]767 为 mux〈3>(muxn〈3>)所控制的电路,当 mux〈3> 为 I 时,dil〈7: 0> 与 dir〈31:24>对位顺序——连接,当mux〈3>为O时,dil<7:0>与dir<31:24>不连接。
[0107]图7(c)所示为在写入路径选择电路中从mux〈4>(muxn〈4>)到mux〈15>(muxn〈15>)信号所控制的部分。
[0108]768 为 mux<4> (muxn〈4>)所控制的电路,当 mux<4> 为 I 时,dil〈3: 0> 与 dir<7:4>对位顺序——连接,当mux<4>为O时,dil<3:0>与dir<7:4>不连接;
[0109]769 为 mux〈5>(muxn〈5>)所控制的电路,当 mux〈5> 为 I 时,dil〈3: 0> 与 dir〈23:20>对位顺序--连接,当mux<5>为O时,dil〈3:0>与dir〈23:20>不连接;
[0110]770 为 mux〈6>(muxn〈6>)所控制的电路,当 mux〈6> 为 I 时,dil〈3:0> 与 dir〈15:12>对位顺序--连接,当mux<6>为O时,dil〈3:0>与dir〈15:12>不连接;
[0111]771 为 mux〈7>(muxn〈7>)所控制的电路,当 mux〈7> 为 I 时,dil〈3: 0> 与 dir〈31:28>对位顺序——连接,当mux〈7>为O时,dil<3:0>与dir<31:28>不连接;
[0112]772 为 mux<8> (muxn〈8>)所控制的电路,当 mux<8> 为 I 时,dil〈l:0> 与 dir<3:2>对位顺序——连接,当mux〈8>为O时,dil<l:0>与dir<3:2>不连接;
[0113]773 为 1111?〈9>(1]11?11〈9>)所控制的电路,当 mux〈9> 为1时,(1;[1〈1:0>与 dir〈19:18>对位顺序——连接,当mux〈9>为O时,dil<l:0>与dir<19:18>不连接;
[0114]774 为 mux〈10> (muxn<10>)所控制的电路,当 mux〈10> 为 I 时,dil〈l: 0> 与dir<ll: 10> 对位顺序--连接,当 mux〈10> 为 O 时,dil〈l:0> 与 dir〈ll: 10> 不连接;
[0115]775 为 mux〈ll> (muxn〈ll>)所控制的电路,当 mux〈ll> 为 I 时,dil〈l:0> 与dir〈27:26>对位顺序——连接,当mux〈ll>为O时,dil<l:0>与dir<27:26>不连接;[0116]776 为 mux〈12> (muxn<12>)所控制的电路,当 mux〈12> 为 I 时,dil〈l:0> 与dir<7:6>对位顺序一一连接,当mux〈ll>为O时,dil〈l:0>与dir<7:6>不连接;
[0117]777 为 mux〈13> (muxn<13>)所控制的电路,当 mux〈13> 为 I 时,dil〈l:0> 与dir〈23:22>对位顺序——连接,当mux〈13>为O时,dil〈l:0>与dir<23:22>不连接;
[0118]778 为 mux〈14> (muxn<14>)所控制的电路,当 mux〈14> 为 I 时,dil〈l:0> 与dir<15:14> 对位顺序一一连接,当 mux<14> 为 O 时,dil〈l:0> 与 dir〈15:14> 不连接;
[0119]779 为 mux〈15> (muxn<15>)所控制的电路,当 mux〈15> 为 I 时,dil〈l:0> 与dir<31:30> 对位顺序一一连接,当 mux<15> 为 O 时,dil〈l:0> 与 dir〈31:30> 不连接。
[0120]图7 Cd)所示为在写入路径选择电路中从mux〈16> (muxn<16>)到mux〈31>(muxn<31>)信号所控制的部分。
[0121]当mux〈16>为I时,dil〈0>与dir〈l>对位顺序一一连接,当mux〈16>为O时,dil〈0> 与 dir〈l> 不连接;
[0122]当mux〈17>为I时,dil〈0>与dir〈17>对位顺序——连接,当mux〈17>为O时,dil〈0> 与 dir〈17> 不连接;
[0123]当mux〈18>为I时,dil〈0>与dir〈9>对位顺序——连接,当mux〈18>为O时,dil〈0> 与 dir〈l> 不连接;
[0124]当mux〈19> 为 I 时,dil〈0> 与 dir〈25> 对位顺序一一连接,当 mux〈19> 为 O 时,dil〈0> 与 dir〈25> 不连接;
[0125]当mux〈20>为I时,dil〈0>与dir〈5>对位顺序一一连接,当mux〈20>为O时,dil〈0> 与 dir<5> 不连接;
[0126]当mux〈21> 为 I 时,dil〈0> 与 dir〈21> 对位顺序一一连接,当 mux〈21> 为 O 时,dil〈0> 与 dir〈21> 不连接;
[0127]当mux<22> 为 I 时,dil〈0> 与 dir〈13> 对位顺序一一连接,当 mux<22> 为 O 时,dil〈0> 与 dir〈13> 不连接;
[0128]当mux〈23> 为 I 时,dil〈0> 与 dir〈29> 对位顺序一一连接,当 mux〈23> 为 O 时,dil〈0> 与 dir〈29> 不连接;
[0129]当mux〈24>为I时,dil〈0>与dir〈3>对位顺序——连接,当mux〈24>为O时,dil〈0> 与 dir<3> 不连接;
[0130]当mux〈25> 为 I 时,dil〈0> 与 dir〈19> 对位顺序一一连接,当 mux〈25> 为 O 时,dil〈0> 与 dir〈19> 不连接;
[0131]当mux〈26> 为 I 时,dil〈0> 与 dir〈ll> 对位顺序一一连接,当 mux〈26> 为 O 时,dil〈0> 与 dir〈ll> 不连接;
[0132]当mux〈27>为I时,dil〈0>与dir〈27>对位顺序——连接,当mux〈27>为O时,dil〈0> 与 dir〈27> 不连接;
[0133]当mux〈28>为I时,dil〈0>与dir〈7>对位顺序一一连接,当mux〈28>为O时,dil〈0>与diK7>不连接;
[0134]当mux〈29> 为 I 时,dil〈0> 与 dir〈23> 对位顺序一一连接,当 mux〈29> 为 O 时,dil〈0> 与 dir〈23> 不连接;
[0135]当mux〈30> 为 I 时,dil〈0> 与 dir〈15> 对位顺序一一连接,当 mux〈30> 为 O 时,dil〈0> 与 dir〈15> 不连接;
[0136]当mux〈31> 为 I 时,dil〈0> 与 dir〈31> 对位顺序一一连接,当 mux〈31> 为 O 时,dil〈0> 与 dir〈31> 不连接。
[0137]图7 (e)所示为写入路径选择电路中的写入数据输出端口的上拉结构,该部分的目的是,在写入数据输出端口未被使用的时候,该端口被上拉为“I”。如图所示,图中780为P管,图7 Ce)的所有MOS管均为同类型的P管,当某个写入数据输出端所连接的上拉管的所有控制信号全部为“O”时,即该输出端所涉及的控制信号全部没有处于有效状态,则该写入数据输出端被拉高。如图所示,
[0138]dir<31> 的上拉信号分别是 mux〈31>、mux〈15>、mux〈7>、mux〈3>、mux〈l>、mux〈0> ;
[0139]dir〈30> 的上拉信号分别是 mux〈15>、mux〈7>、mux〈3>、mux〈l>、mux〈0> ;
[0140]dir<29> 的上拉信号分别是 mux〈23>、mux〈7>、mux〈3>、mux〈l>、mux〈0> ;
[0141]dir<28> 的上拉信号分别是 mux〈7>、mux〈3>、mux〈l>、mux〈0> ;
[0142]dir<27> 的上拉信号分别是 mux〈27>、mux〈ll>、mux〈3>、mux〈l>、mux〈0> ;
[0143]dir<26> 的上拉信号分别是 mux〈ll>、mux〈3>、mux〈l>、mux〈0> ;
[0144]dir<25> 的上拉信号分别是 mux〈19>、mux〈3>、mux〈l>、mux〈0> ;
[0145]dir<24> 的上拉信号分别是 mux〈3>、mux〈l>、mux〈0> ;
[0146]dir<23> 的上拉信号分别是 mux〈29>、mux〈13>、mux〈5>、mux〈l>、mux〈0> ;
[0147]dir<22> 的上拉信号分别是 mux〈13>、mux〈5>、mux〈l>、mux〈0> ;
[0148]dir〈21> 的上拉信号分别是 mux〈21>、mux〈5>、mux〈l>、mux〈0> ;
[0149]dir〈20> 的上拉信号分别是 mux〈5>、mux〈l>、mux〈0> ;
[0150]dir〈19> 的上拉信号分别是 mux〈25>、mux〈19>、mux〈l>、mux〈0> ;
[0151]dir〈18> 的上拉信号分别是 mux〈9>、mux〈l>、mux〈0> ;
[0152]dir〈17> 的上拉信号分别是 mux〈17>、mux〈l>、mux〈0> ;
[0153]dir<16> 的上拉信号分别是 mux〈l>、mux〈0> ;
[0154]dir〈15> 的上拉信号分别是 mux〈30>、mux〈14>、mux〈6>、mux〈2>、mux〈0> ;
[0155]dir〈14> 的上拉信号分别是 mux〈14>、mux〈6>、mux〈2>、mux〈0> ;
[0156]dir〈13> 的上拉信号分别是 mux〈22>、mux〈6>、mux〈2>、mux〈0> ;
[0157]dir〈12> 的上拉信号分别是 mux〈6>、mux〈2>、mux〈0> ;
[0158]dir〈ll> 的上拉信号分别是 mux〈26>、mux〈ll>、mux〈2>、mux〈0> ;
[0159]dir〈10> 的上拉信号分别是 mux〈10>、mux〈2>、mux〈0> ;
[0160]dir<9> 的上拉信号分别是 mux〈18>、mux〈2>、mux〈0> ;
[0161]dir<8> 的上拉信号分别是 mux〈2>、mux〈0> ;
[0162]dir<7> 的上拉信号分别是 mux〈28>、mux〈12>、mux〈4>、mux〈2>、mux〈0> ;
[0163]dir<6> 的上拉信号分别是 mux〈12>、mux〈4>、mux〈2>、mux〈0> ;
[0164]dir<5> 的上拉信号分别是 mux〈20>、mux〈4>、mux〈2>、mux〈0> ;
[0165]dir<4> 的上拉信号分别是 mux〈4>、mux〈2>、mux〈0> ;
[0166]dir<3> 的上拉信号分别是 mux〈24>、mux〈8>、mux〈2>、mux〈0> ;
[0167]dir<2> 的上拉信号分别是 mux〈8>、mux〈2>、mux〈0> ;
[0168]dir〈l> 的上拉信号分别是 mux〈16>、mux〈2>、mux〈0> ;[0169]dir〈0> 的上拉信号分别是 mux〈2>、mux〈0> ;
[0170]本实施例的工作原理如下:
[0171]当配置信号Cfgbit〈2:0>为“000”时,表示当前的位宽为1,即Wl信号有效;因为当前的位宽为1,而最大位宽为32,为了充分利用所有的存储资源,需要所有的5位地址全部可用,才可以将I位位宽的写入数据选择性地分配给最大为32位的存储空间,所以地址的使能信号addren〈4:0>为“11111”,即所有的5位地址全部可用。
[0172]5位地址信号在时钟的上升沿被釆样,地址跳转电路102随着被釆样的地址的变化而跳转,当被釆样的地址addK4:0>为“00000”时,wrerKO〉信号为“1”,其余wrerKi〉信号为“O”;当被釆样的地址addK4:0>为“00001”时,wrenO信号为“1”,其余wren<i> ff号为“O”;也就是说32位的wrerKi〉信号随着5为地址信号addK4:0>的釆样变化而变化,每次只有I位wren〈i>信号为1,即i为addr〈4:0>表征的十进制值。
[0173]路径选择控制电路105随位宽配置译码电路104和地址跳转电路102的跳转而跳转。在Wl信号为1,其他位宽有效信号为O时:
[0174]mux<0>随着wren〈0>跳转而跳转;
[0175]mux<l>随着wren〈16>跳转而跳转;
[0176]mux<2>随着wren〈8>跳转而跳转;
[0177]mux<3>随着wren〈24>跳转而跳转;
[0178]mux<4>随着wren〈4>跳转而跳转;
[0179]mux<5>随着wren〈20>跳转而跳转;
[0180]mux<6>随着wren〈12>跳转而跳转;
[0181]mux<7>随着wren〈28>跳转而跳转;
[0182]mux<8>随着wren〈2>跳转而跳转;
[0183]mux<9>随着wren〈18>跳转而跳转;
[0184]mux<10> 随着 wren〈10> 跳转而跳转;
[0185]mux<ll> 随着 wren〈26> 跳转而跳转;
[0186]mux<12>随着wren〈6>跳转而跳转;
[0187]mux<13> 随着 wren〈22> 跳转而跳转;
[0188]mux<14> 随着 wren〈14> 跳转而跳转;
[0189]mux<15> 随着 wren〈30> 跳转而跳转;
[0190]mux<16>随着wren〈l>跳转而跳转;
[0191]mux<17> 随着 wren〈l7> 跳转而跳转;
[0192]mux<18>随着wren〈9>跳转而跳转;
[0193]mux<19> 随着 wren〈25> 跳转而跳转;
[0194]mux<20> 随着 wren〈25> 跳转而跳转;
[0195]mux<21> 随着 wren〈21> 跳转而跳转;
[0196]mux<22> 随着 wren〈13> 跳转而跳转;
[0197]mux<13> 随着 wren〈29> 跳转而跳转;
[0198]mux<24>随着wren〈3>跳转而跳转;
[0199]mux<25> 随着 wren〈19> 跳转而跳转;[0200] mux<26> 随着 wren〈ll> 跳转而跳转;
[0201 ] mux<27> 随着 wren〈27> 跳转而跳转;
[0202]mux<28>随着wren〈7>跳转而跳转;
[0203]mux<29> 随着 wren〈23> 跳转而跳转;
[0204]mux<30> 随着 wren〈15> 跳转而跳转;
[0205]mux〈31> 随着 wren〈31> 跳转而跳转。
[0206]写入路径选择电路106负责根据路径选择控制电路105,即地址和配置信号来决定写入数据输入端和写入数据输出端的连接关系。当wl为1,地址信号addr〈4:0>为“00000” 时,dil〈0> 连接 dir〈0> ;当 Wl 为 1,地址信号 addr<4:0> 为“00001” 时,dil〈0> 连
接 dir<l> ;当 wl 为 1,地址信号 addr<4:0> 为“00010”时,dil〈0> 连接 dir<2>......当 wl 为
I,地址信号addr〈4:0>为“11111”时,dil〈0>连接dir<31> ;即随着5位地址信号的跳转,dil〈0>逐次与dir〈i>——连接,i即地址的十进制值,从而实现位宽为I时,写入路径的选择功能。
[0207]同理,当配置信号cfgbit〈2:0>为“001”时,表示当前的位宽为2,即W2信号有效;因为当前的位宽为2,而最大位宽为32,为了充分利用所有的存储资源,需要4位地址全部可用,才可以将2位位宽的读取数据选择性地分配给最大为32位的存储空间,所以地址的使能信号addren〈4:0>为“11110”,即所有的高4位地址可用。
[0208]5位地址信号在时钟的上升沿被采样,地址跳转电路102随着被采样的地址信号的变化而跳转,因为地址跳转电路的输入addren〈4:0>为“11110”,所以只有4位地址addr<4:l>有效。当被采样的地址addr〈4:1>为“0000”时,wren〈0>和wren〈l>信号为“1”,其余wren<i>信号为“O” ;当被采样的地址addr<3:0>为“0001”时,wren<2>和wren<3>信号为“1”,其余wren〈i>信号为“O” ;也就是说32位的wren〈i>信号随着5位地址信号addr〈4:0>的米样变化而变化,每次只有2位wren〈i>和wren〈i+l>信号为I,即i为addr<4:0> (最低位为O)表征的十进制值。
[0209]路径选择控制电路105随位宽配置译码电路104和地址跳转电路102的跳转而跳转。在w2信号为I,其他位宽有效信号为O时:
[0210]mux<0>随着wren〈0>跳转而跳转;
[0211]mux<l>随着wren〈16>跳转而跳转;
[0212]mux<2>随着wren〈8>跳转而跳转;
[0213]mux<3>随着wren〈24>跳转而跳转;
[0214]mux<4>随着wren〈4>跳转而跳转;
[0215]mux<5>随着wren〈20>跳转而跳转;
[0216]mux<6>随着wren〈12>跳转而跳转;
[0217]mux<7>随着wren〈28>跳转而跳转;
[0218]mux<8>随着wren〈2>跳转而跳转;
[0219]mux<9>随着wren〈18>跳转而跳转;
[0220]mux<10> 随着 wren〈10> 跳转而跳转;
[0221]mux<ll> 随着 wren〈26> 跳转而跳转;
[0222]mux<12>随着wren〈6>跳转而跳转;[0223]mux〈13> 随着 wren〈22> 跳转而跳转;
[0224]mux<14> 随着 wren〈14> 跳转而跳转;
[0225]mux<15> 随着 wren〈30> 跳转而跳转;
[0226]其余mux<i> (i=16....31)信号为 O。
[0227]写入路径选择电路106负责根据路径选择控制电路105,即地址和配置信号来决定写入数据输入端和写入数据输出端的连接关系。当w2为1,地址信号addr〈4:l>为“0000”时,dil<l: 0> 连接 dir〈l: 0> ;当 w2 为 1,地址信号 addr<4:l> 为“0001 ”时,dil<l: 0>
连接 dir<3:2> ;当 w2 为 1,地址信号 addr<4:l> 为“0010”时,dil〈l: 0> 连接 dir<5:4>......当w2为1,地址信号addr<4:l>为“ 1111”时,dil〈l:0>连接dir<31:30> ;即随着4位地址信号的跳转,dil<l:0>逐次与dir<2i+l:2i>——连接,i即地址的十进制值,dir〈i>信号在不被连接的时候均处于上拉状态,从而实现位宽为2时,写入路径的选择功能。
[0228]当配置信号cfgbit〈2:0>为“010”时,表示当前的位宽为4,即W4信号有效;因为当前的位宽为4,而最大位宽为32,为了充分利用所有的存储资源,需要3位地址全部可用,才可以将4位位宽的读取数据选择性地分配给最大为32位的存储空间,所以地址的使能信号addren〈4:0>为“11100”,即所有的高3位地址可用。
[0229]5位地址信号在时钟的上升沿被采样,地址跳转电路102随着被采样的地址的变化而跳转,因为地址跳转电路的输入addren〈4: 0>为“ 11100 ”,所以只有3位地址addr<4:2> 有效。当被采样的地址 addr〈4:2> 为 “000” 时,wren〈0>、wren〈l>、wren<2> 和wren<3>信号为“1”,其余wren<i>信号为“O” ;当被采样的地址addr<4:2>为“001”时,wren〈4>、wren〈5>、wren〈6> 和 wren〈7> 信号为“ I”,其余 wren〈i> 信号为“O”;也就是说 32 位的wren〈i>信号随着3为地址信号addr〈4:2>的米样变化而变化,每次只有4位wren〈i>、wren<i+l>>wren<i+2> 和 wren〈i+3> 信号为 1,即 i 为 addr〈4:0> (低 2 位为 O)表征的十进制值。
[0230]路径选择控制电路105随位宽配置译码电路104和地址跳转电路102的跳转而跳转,在《4信号为1,其他位宽有效信号为O时:
[0231]mux<0>随着wren〈0>跳转而跳转;
[0232]mux<l>随着wren〈16>跳转而跳转;
[0233]mux<2>随着wren〈8>跳转而跳转;
[0234]mux<3>随着wren〈24>跳转而跳转;
[0235]mux<4>随着wren〈4>跳转而跳转;
[0236]mux<5>随着wren〈20>跳转而跳转;
[0237]mux<6>随着wren〈12>跳转而跳转;
[0238]mux<7>随着wren〈28>跳转而跳转;
[0239]其余mux〈i> (i=8….31)信号为 O。
[0240]写入路径选择电路106负责根据路径选择控制电路105,即地址和配置信号来决定写入数据输入端和写入数据输出端的连接关系。当w4为I,地址信号addr〈4:2>为“000”时,dil〈3:0> 连接 dir<3:0> ;当界4 为 1,地址信号 addr〈4:2> 为 “001” 时,dil〈3:0> 连接
dir<7:4> ;当 w4 为 1,地址信号 addr<4:2> 为“010”时,dil〈3: 0> 连接 dir<ll:8>......当 w4
为I,地址信号addr<4:2>为“1111”时,di I〈3:0>连接dir<31:28> ;即随着3位地址信号的跳转,dil<3:0>逐次与dir〈4i+3:4i>——连接,i即地址的十进制值,dir<i>信号在不被连接的时候均处于上拉状态,从而实现位宽为4时,写入路径的选择功能。
[0241]当配置信号cfgbit〈2:0>为“011”时,表示当前的位宽为8,即W8信号有效;因为当前的位宽为8,而最大位宽为32,为了充分利用所有的存储资源,需要2位地址全部可用,才可以将8位位宽的读取数据选择性地分配给最大为32位的存储空间,所以地址的使能信号addren〈4:0>为“11000”,即所有的高2位地址可用。
[0242]5位地址信号在时钟的上升沿被采样,地址跳转电路102随着被采样的地址的变化而跳转,因为地址跳转电路的输入addren〈4:0>为“11000”,所以只有2位地址addr〈4:3>有效。当被采样的地址addr〈4:3>为“00”时,wren<n> (n=0, 1,2-7)信号为“1”,其余wren<i>信号为“O”;当被采样的地址addr<4:3>为“01”时,wren〈n> (n=7,8,9-15)信号为“ I”,其余wren〈i>信号为“O”;也就是说32位的wren〈i>信号随着2为地址信号addr〈4:3>的采样变化而变化,每次只有8位wren〈i>、wren〈i+l>、wren〈i+2>、…、wren<i+7>和wren<i+28>信号为I,即i为addr<4:3> (低3位为O)表征的十进制值。
[0243]路径选择控制电路105随位宽配置译码电路104和地址跳转电路102的跳转而跳转,在w8信号为I,其他位宽有效信号为O时:
[0244]mux<0>随着wren〈0>跳转而跳转;
[0245]mux<l>随着wren〈16>跳转而跳转;
[0246]mux<2>随着wren〈8>跳转而跳转;
[0247]mux<3>随着wren〈24>跳转而跳转;
[0248]其余mux〈i> (i=4….31)信号为 O。
[0249]写入路径选择电路106负责根据路径选择控制电路105,即地址和配置信号来决定写入数据输入端和写入数据输出端的连接关系。当w8为I,地址信号addr〈4:3>为“00”时,dil<7:0> 连接 dir〈7:0> ;当 w8 为 1,地址信号 addr〈4:3> 为 “01” 时,dil<7:0> 连接dir<15:8> ;当 w8 为 1,地址信号 addr〈4:3> 为 “ 10” 时,dil<7:0> 连接 dir<23:16> ;当 w8为I,地址信号addr<4: 3>为“ 11”时,di 1〈7: 0>连接dir〈31:24> ;即随着2位地址信号的跳转,dil<7:0>逐次与dir〈8i+7:8i>——连接,i即地址的十进制值,dir〈i>信号在不被连接的时候均处于上拉状态,从而实现位宽为8时,写入路径的选择功能。
[0250]当配置信号cfgbit〈2:0>为“100”时,表示当前的位宽为16,即W16信号有效;因为当前的位宽为16,而最大位宽为32,为了充分利用所有的存储资源,需要I位地址全部可用,才可以将16位位宽的读取数据选择性地分配给最大为32位的存储空间,所以地址的使能信号addren〈4:0>为“10000”,即所有的高I位地址可用。
[0251]5位地址信号在时钟的上升沿被采样,地址跳转电路102随着被采样的地址的变化而跳转,因为地址跳转电路的输入addren〈4:0>为“00001”,所以只有I位地址addr〈4>
有效。当被米样的地址addr〈4>为“O”时,wren〈0>,wren〈l>......wren〈15>信号为“I”,其余
wren<i> 信号为“O”;当被采样的地址 addr〈4> 为“I” 时,wren〈16>, wren〈17>......wren〈31>
信号为“1”,其余wren〈i>信号为“O” ;也就是说32位的wren〈i>信号随着I位地址信号addr<4>的采样变化而变化,每次只有16位wren〈i>信号为I。
[0252]路径选择控制电路105随位宽配置译码电路104和地址跳转电路102的跳转而跳转,在wl6信号为I,其他位宽有效信号为O时,mux<0>随着wren〈0>跳转而跳转;mux〈l>随着wren〈16>跳转而跳转;其余mux〈i> (i=2….31)信号为O。
[0253]写入路径选择电路106负责根据路径选择控制电路105,即地址和配置信号来决定写入数据输入端和写入数据输出端的连接关系。当wl6为1,地址信号addr〈4>为“O”时,dil〈15:0> 连接 dir〈15:0> ;当 wl6 为 1,地址信号 addr〈4> 为 “I” 时,dil〈15:0> 连接dir<31:16> ;即随着I位地址信号的跳转,dil〈15:0>逐次与dir<16i+15:16i>——连接,i即地址的十进制值,dir〈i>信号在不被连接的时候均处于上拉状态,从而实现位宽为16时,写入路径的选择功能。
[0254]当配置信号cfgbit〈2:0>为“101”时,表示当前的位宽为32,即W32信号有效;因为当前的位宽为32,而最大位宽为32,即已经充分利用了所有的存储资源,不需要地址信号译码,所以地址的使能信号addren〈4:0>为“00000”,即不需要地址译码读取路径电路。
[0255]5位地址信号在时钟的上升沿被采样,地址跳转电路102随着被采样的地址的变化而跳转,因为地址跳转电路的输入addren〈4:0>为“00000”,所以全部地址无效。ffren<i>均为I。
[0256]路径选择控制电路105随位宽配置译码电路104和地址跳转电路102的跳转而跳转,在w32信号为I,其他位宽有效信号为O时,mux<i> (i=0….31)信号全部为1,不随地址跳转而跳转。
[0257]写入路径选择电路106负责根据路径选择控制电路105,即地址和配置信号来决定写入数据输入端和写入数据输出端的连接关系。当w32为l,mux〈0>为l,dil〈31:0>与dir<31:0>——连接,从而实现了位宽为32时,写入路径的选择功能。
[0258]采用了可配置的电路设计,利用地址使能译码电路以及位宽配置译码电路将配置信号转换为地址使能信号与位宽控制有效信号,再通过地址跳转电路将地址信号与地址使能信号转换为写使能信号,最后`通过路径选择控制电路根据写使能信号与位宽控制有效信号输出路径选择控制信号并控制写入路径选择电路中的传输们,从而控制写入路径的位宽,即RAM的写入路径的位宽可以根据配置信号来决定。这样是得RAM可以更加方便的应用与FPGA等可配置器件中。本发明的读取路径的可配置位宽的最大位数可达到32位,扩展了 RAM的实用范围,使得RAM具有了快速写入数据的功能。
[0259]在以上的描述中阐述了很多具体细节以便于充分理解本发明。但是以上描述仅是本发明的较佳实施例而已,本发明能够以很多不同于在此描述的其它方式来实施,因此本发明不受上面公开的具体实施的限制。同时任何熟悉本领域技术人员在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
【权利要求】
1.一种用于可配置位宽RAM的写入路径选择及控制电路,其特征在于,包括: 地址采样电路,用来接收地址输入信号,并输出采样地址信号; 地址使能译码电路,接收配置信号,并根据配置信号译码出地址信号对应位的地址使能信号; 位宽配置译码电路,接收配置信号,并根据配置信号输出位宽控制信号; 地址跳转电路,接收采样地址信号以及地址信号对应位的使能信号,并根据所述采样地址信号以及所述地址信号对应位的使能信号输出32位的写使能信号; 路径选择控制电路,根据所述地址跳转电路输出的32位的写使能信号和所述位宽配置译码电路输出的位宽控制有效信号,输出32对互补的路径选择控制信号; 写入路径选择电路,根据路径选择控制信号,将32位的写入数据配置位宽进行输入给RAM0
2.根据权利要求1所述用于可配置位宽RAM的读取路径选择及控制电路,其特征在于,地址采样电路为一个D触发器组,所述D触发器组包括5个D触发器,根据地址elk信号以及地址信号,所述D触发器组输出采样地址信号,所述采样地址信号包括时钟采样后的同相信号和时钟采样后的反相信号。
3.根据权利要求1所述用于可配置位宽RAM的读取路径选择及控制电路,其特征在于,所述配置信号为三组配置输入信号,所述地址使能译码电路包括三输入或非门、二输入与门、非门、二输入与非门、二输入或门、两个二输入或非门和五个驱动器,所述地址使能信号根据配置信号的不同分别控制对应位的地址信号是否有效。
4.根据权利要求1所述用于可配置位宽RAM的读取路径选择及控制电路,其特征在于,所述配置信号为三组配置输入信号,所述位宽配置译码电路包括三个反相器和六个三输入与门,所述三输入与门根据所述配置信号输出位宽控制信号。
5.根据权利要求1所述用于可配置位宽RAM的读取路径选择及控制电路,其特征在于,所述地址跳转电路包括32个写使能信号输出端,地址跳转电路的每个输出端均为地址采样信号(或者其反相信号)分别与对应位的地址使能信号的与非输出后的与信号。
6.根据权利要求1所述用于可配置位宽RAM的读取路径选择及控制电路,其特征在于,路径选择控制电路包括32对输出端,每对输出端输出互补的路径选择控制信号,每对互补的路径选择控制信号互为反相信号,每个路径选择信号均为对应的写使能信号与位宽控制信号逻辑运算后的结果。
7.根据权利要求1所述用于可配置位宽RAM的读取路径选择及控制电路,其特征在于,写入路径选择电路包括写入数据信号输出端、写入数据输入端和设于所述所述写入数据信号输入端与所述写入数据信号输出端之间的传输门,所述传输门两端的连通受控于路径选择控制信号。
【文档编号】G11C7/00GK103530234SQ201310461686
【公开日】2014年1月22日 申请日期:2013年9月30日 优先权日:2013年9月30日
【发明者】赵岩, 于芳 申请人:中国科学院微电子研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1