避免在单端口存储器设备中的写入冲突的方法和芯片的制作方法_4

文档序号:8362682阅读:来源:国知局
半部,而第二偶单端口存储器设备525b可以接收偶数据对象的下半部(最低阶位地址)。类似地,第一奇单端口存储器设备525c可以接收奇数据对象的上半部,而第二奇单端口存储器设备525d可以接收奇数据对象的下半部。在其它实施例中,可以使用双宽度单端口存储器设备,从而每个单端口存储器设备具有与偶数据对象或者奇数据对象相同的宽度。
[0047]数据发送器505也可以与写入控制器530可操作通信。写入控制器可以从数据发送器505接收写入命令。写入控制器530可以与每个单端口存储器设备525通信地耦合并且可以用信号发送写入地址和用于写入地址的写入使能。写入控制器530可以对于数据对象写入的上半部和下半部而言同步。偶数对的单端口存储器设备可以被写入控制器530视为一个单端口存储器设备。奇数对的单端口存储器设备525也可以被写入控制器530视为一个单端口存储器设备。
[0048]图5图示在存在单个读取请求器时从单端口存储器的读取操作的一个实施例。读取控制器535可以与每个单端口存储器设备525通信地耦合并且可以在从读取控制器550接收读取请求时用信号发送用于在单端口存储器设备525内的数据对象的读取使能和读取地址。读取请求器550可以通信地耦合到读取控制器。读取控制器535可以在基本上相同的时间用信号发送请求的数据对象的上半部和下半部。偶数对的单端口存储器设备可以被读取控制器535视为一个单端口存储器设备。类似地,奇数对的单端口存储器设备525可以被读取控制器535视为一个单端口存储器设备。数据对象可以用信号被发送到读取电路545,该读取电路可以包含用于上半部数据对象的上读取复用器540a和用于下半部数据对象的下读取复用器540b。可以在被请求时用信号一起发送偶数据对象的上半部和下半部。两个半部可以通过被并行发送来级联。类似地,可以在请求奇数据对象时用信号一起发送奇数据对象的上半部和下半部。两个半部可以通过被并行发送来级联。在各种实施例中,读取电路545可以在存在两个或者更多读取请求器时用图2的读取电路230来替换。
[0049]现在参照图9,图9图示模块500,其中存在来自系统的两个读取请求器。具体而言,图9图示模块500的部分,该部分包括读取操作。偶单端口存储器525a和525b可以通信地耦合到第一复用器902a。奇单端口存储器525c和525d可以耦合到第二复用器。在读取每对单端口存储器时,单端口存储器的上半部和下半部的输出可以在到达它们的相应解复用器902a和902b之前被级联。解复用器902可以根据数据对象被预定去往何处来向第一数据发送器910a或者第二数据发送器910b路由数据对象。读取控制器可以控制读取何时从单端口存储器525以及还从读取电路904的解复用器902发生。
[0050]第一读取请求器910a和第二读取请求器910b可以在基本上相同时间请求从单端口存储器的读取。第一请求器910a和第二请求器910b可以具有延迟逻辑,该延迟逻辑通过在第一读取请求器与第二读取请求器之间交替奇数据对象和偶数据对象来保证没有来自两个或者更多读取请求器的读取冲突。延迟逻辑可以对于请求器之一将对于数据对象的请求延迟一个周期。一个请求器可以接收偶数据对象而另一请求器接收奇数据对象。在各种实施例中,读取控制器906可以包含接收逻辑,从而在请求器910a和910b在基本上相同时间请求数据对象时,读取控制器906可以在第二数据请求器910b读取奇数据对象时指引第一读取请求器910a读取偶数据对象。
[0051]图6图示根据一个实施例的数据发送器505的示例性起动逻辑600。起动逻辑600包括数据传送逻辑605、偶状态(EVEN status)锁存器610、与门615、反相器620和接收数据总线请求625的数据传送仲裁器630。数据传送逻辑605可以是对数据对象进行计数并且在数据总线可用时向数据传送仲裁器630发信号的逻辑。数据传送逻辑605可以在数据总线可用于模块500时用逻辑一向与门615发信号。偶状态锁存器610可以在数据对象发送器505在偶周期、诸如4:1周期时用信号向与门615发送逻辑一。在数据总线可用并且发送器505在偶周期时,数据总线请求626可以被数据传送仲裁器630批准并且发送到模块 500。
[0052]在某些实施例中,如果存在奇数目的数据对象,则在可选延迟510处可以延迟具有奇数目的数据对象的数据传送以等待一个数据对象以从偶数据传送开始以便在偶网格上开始。在各种实施例中,可以有可能在数据发送器505之一中用奇状态锁存器替换偶状态锁存器610。这可以允许从数据发送器505发送的数据对象在奇与偶数据对象之间交替而无需可选延迟电路510。
[0053]图7图示根据实施例的通过模块500的数据对象流的定时图700。标号750图示向模块500的单端口存储器525的写入操作,并且标号760图示从模块500的单端口存储器525的读取操作。读取操作图示来自单个读取请求器的读取请求。在时间t0,可以从第一数据发送器505a发送具有至少第一偶数据对象705a和第一奇数据对象707a的第一写入操作。可以在与从第一读取器505a发送第一写入操作基本上相同的时间从第二数据发送器505b发送具有至少第二偶数据对象705b和第一奇数据对象707a的第二写入操作。可以向可选延迟510发送写入操作。
[0054]在时间tl,可选延迟510可以延迟写入操作之一,从而来自一个写入操作的偶数据对象不在与来自另一写入操作的另一偶数据对象相同的时间被写入到单端口存储器设备。类似地,可选延迟510可以延迟写入操作,从而两个奇数据对象不在基本上相同时间被写入到单端口存储器设备。在定时图700中所示示例中,可以延迟第二写入操作。
[0055]在时间t2,来自第一写入操作的第一偶数据对象705a可以被写入到专用于偶数据对象的单端口存储器设备。可以延迟第二偶数据对象705b,从而其不在与第一偶数据对象705a相同的时间被写入到单端口存储器设备。
[0056]在时间t3,第二偶数据对象705b可以被写入到专用于偶数据对象的单端口存储器设备。也在时间t3,第一奇数据对象707a可以被写入到专用于奇数据对象的单端口存储器设备。
[0057]在时间t4,第二奇数据对象707b可以被写入到专用于奇数据对象的单端口存储器设备。延迟可以保证向相同单端口存储器设备的数据对象写入在不同时间出现,这可以避免在单端口存储器设备中的写入冲突。在实施例中,每个奇和偶数据对象可以被拆分成专用于数据对象的下半部和上半部的分离的单端口存储器。
[0058]现在参照标号760指代的从单个读取请求器向单端口存储器设备的单个读取请求。在时间t5,读取请求器可以进行对于第二偶数据对象的请求。第二偶数据对象可以已经被划分成在第一偶单端口存储器525a(图5)中存储的上半部710a和在第二偶单端口存储器525b中存储的下半部710b。读取控制器535可以在存在请求时向单端口存储器发信号,该信号包含第二偶数据对象705b的上半部710a和下半部710b。单端口存储器可以在与下半部710b基本上相同的时间发送上半部710a。
[0059]在时间t6,上半部710a和下半部710b可以在被并行发送时级联。级联的半部可以形成完整的第二偶数据对象705b。第二偶数据对象705b可以向读取请求器继续前进。
[0060]图8图示根据实施例的用于避免在图5的模块500中的单端口存储器设备中的写入冲突的流程图。方法800可以在操作805开始。在操作805中,模块可以从第一数据发送器接收具有第一偶数据对象和第一奇数据对象的第一写入操作。
[0061]在操作808中,模块也可以从第二数据发送器接收具有第二偶数据对象和第二奇数据对象的第二写入操作。第一写入操作和第二写入操作可以在基本上相同时间被模块接收和以相同方式对准。
[0062]在操作810中,可以延迟第二写入操作,从而第一偶数据对象不在与第二偶数据对象基本上相同的时间向第一单端口存储器设备写入。该延迟也保证第一奇数据对象不在与写入第二奇数据对象基本上相同的时间向第二单端口存储器设备写入。
[0063]在操作815中,第一偶数据对象可以被写入到第一单端口存储器设备,并且第一奇数据对象可以被写入到第二单端口存储器设备。另外,第二偶数据对象可以被写入到第一单端口存储器设备,并且第二奇数据对象可以被写入到第二单端口存储器设备。
[0064]尽管已经参照本发明的具体实施例描述本发明,但是本领域技术人员将能够对描述的实施例进行各种修改而未脱离实施例的真实精神实质和范围。这里所用术语和描述仅通过示例来阐述而无意作为限制。本领域技术人员将认识到这些和其它变化在如所附权利要求及其等效含义中定义的实施例的精神实质和范围内是可能的。
【主权项】
1.一种避免来自两个或者更多独立写入操作在单端口存储器设备中的写入冲突的方法,包括: 通过模块从第一数据发送器接收具有第一偶数据对象和第一奇数据对象的第一写入操作; 通过所述模块在与所述第一写入操作基本上相同的时间从第二数据发送器接收具有第二偶数据对象和第二奇数据对象的第二写入操作; 延迟所述第二写入操作,使得所述第一偶
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1