FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > FPGA

FPGA comp.arch.fpga newsgroup (usenet)

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 05-12-2006, 12:16 AM
Luke
Guest
 
Posts: n/a
Default Multiple Write Port Register Files

I'm working on a project that needs four write ports in a number of
different register files. I'm already aware of time-multiplexing and
partitioning. Generating a flop-based register file would take far too
many resources.

Are there any other methods of implementing multiple write ports on a
single register file? Any nifty workarounds people have done? Any
paper ideas?

Reply With Quote
  #2 (permalink)  
Old 05-12-2006, 03:21 AM
JJ
Guest
 
Posts: n/a
Default Re: Multiple Write Port Register Files


Luke wrote:
> I'm working on a project that needs four write ports in a number of
> different register files. I'm already aware of time-multiplexing and
> partitioning. Generating a flop-based register file would take far too
> many resources.
>
> Are there any other methods of implementing multiple write ports on a
> single register file? Any nifty workarounds people have done? Any
> paper ideas?


Google this group back a few weeks, the solution was presented in
detail to the exact same same question.

John Jakson

Reply With Quote
  #3 (permalink)  
Old 05-12-2006, 02:15 PM
John_H
Guest
 
Posts: n/a
Default Re: Multiple Write Port Register Files

JJ wrote:
> Luke wrote:
>
>>I'm working on a project that needs four write ports in a number of
>>different register files. I'm already aware of time-multiplexing and
>>partitioning. Generating a flop-based register file would take far too
>>many resources.
>>
>>Are there any other methods of implementing multiple write ports on a
>>single register file? Any nifty workarounds people have done? Any
>>paper ideas?

>
>
> Google this group back a few weeks, the solution was presented in
> detail to the exact same same question.
>
> John Jakson


Bottom line: If you're using distributed memory (async read) rather than
BlockRAM style memory and don't want to time multiplex, you'll need 4
memories per independent port (4 write ports, one read -> 20 memories)
and as many XORs. Registers might not be so resource intensive after all.
Reply With Quote
  #4 (permalink)  
Old 05-12-2006, 07:55 PM
Luke
Guest
 
Posts: n/a
Default Re: Multiple Write Port Register Files

Yeah, I looked into using that. It actually gets pretty expensive,
seems to have an exponential cost related to the number of write ports
for the XOR scheme. It is a very interesting solution though.

I have a multiple-port reorder buffer that uses partitioning to
implement multiple ports, which is very efficient. The reorder buffer
writes up to four entries at a time into the register file. So I'll
just use time-multiplexing for the register file and hide the extra
cycle of latency it takes to update the register file by keeping the
data in the reorder buffer an extra cycle.

Reply With Quote
Reply

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[VPI] read and write values of register arrays ? Nicolas Hervé Verilog 0 09-05-2008 04:28 PM
[VPI] read and write values of register arrays ? Nicolas Hervé Verilog 0 09-05-2008 04:21 PM
On a different note: Unable to write edif files in Synopsys Design Compiler anup FPGA 0 08-25-2005 06:59 PM
READ/WRITE files using TEXTIO using Quartus John FPGA 1 04-24-2005 07:37 PM
dual port RAM - write cycle problems Tobias Möglich FPGA 3 02-17-2004 04:15 PM


All times are GMT +1. The time now is 11:59 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved