Site Home   Archive Home   FAQ Home   How to search the Archive   How to Navigate the Archive   
Compare FPGA features and resources   

Threads starting:
1994JulAugSepOctNovDec1994
1995JanFebMarAprMayJunJulAugSepOctNovDec1995
1996JanFebMarAprMayJunJulAugSepOctNovDec1996
1997JanFebMarAprMayJunJulAugSepOctNovDec1997
1998JanFebMarAprMayJunJulAugSepOctNovDec1998
1999JanFebMarAprMayJunJulAugSepOctNovDec1999
2000JanFebMarAprMayJunJulAugSepOctNovDec2000
2001JanFebMarAprMayJunJulAugSepOctNovDec2001
2002JanFebMarAprMayJunJulAugSepOctNovDec2002
2003JanFebMarAprMayJunJulAugSepOctNovDec2003
2004JanFebMarAprMayJunJulAugSepOctNovDec2004
2005JanFebMarAprMayJunJulAugSepOctNovDec2005
2006JanFebMarAprMayJunJulAugSepOctNovDec2006
2007JanFebMarAprMayJunJulAugSepOctNovDec2007
2008JanFebMarAprMayJunJulAugSepOctNovDec2008
2009JanFebMarAprMayJunJulAugSepOctNovDec2009
2010JanFebMarAprMayJunJulAugSepOctNovDec2010
2011JanFebMarAprMayJunJulAugSepOctNovDec2011
2012JanFebMarAprMayJunJulAugSepOctNovDec2012
2013JanFebMarAprMayJunJulAugSepOctNovDec2013
2014JanFebMarAprMayJunJulAugSepOctNovDec2014
2015JanFebMarAprMayJunJulAugSepOctNovDec2015
2016JanFebMarAprMayJunJulAugSepOctNovDec2016
2017JanFebMarAprMayJunJulAugSepOctNovDec2017
2018JanFebMarAprMayJunJulAugSepOctNovDec2018
2019JanFebMarAprMayJunJulAugSepOctNovDec2019
2020JanFebMarAprMay2020

Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Custom Search

Messages from 153450

Article: 153450
Subject: Re: What is a PLD/FPGA with serial or Ethernet port logic or block
From: LM <sala.nimi@mail.com>
Date: Mon, 27 Feb 2012 11:02:32 -0800 (PST)
Links: << >>  << T >>  << A >>
>
> MachXO2 has SPI and i2c ports.built in.
>
> You really need to state some numbers, 'a bit slow' is not good
> enough.
>
> =A0Specify how fast it needs to be and how much data needs to be sent
> each way, and over what distance.

About speed and data.

Lets say about 640 bytes 10-50 times per second from PC to devices.
More than this would always be better. Opposite direction is not
critical. And distance, 3 feet minimum, more is better. I can test it
with less, but it is not of much when ready.

>The FT2232H and Ethernet are available as small modules, (one is even
>free on the MaxhXO2 boards..) so start with those, and pull them into
>the logic only if you really need to.
This seems wise
So speed of virtual serial port like FTchip is not limited to same way
as physical RS232 port?

Article: 153451
Subject: Re: What is a PLD/FPGA with serial or Ethernet port logic or block
From: Jim Granville <j.m.granville@gmail.com>
Date: Mon, 27 Feb 2012 11:11:52 -0800 (PST)
Links: << >>  << T >>  << A >>
On Feb 28, 8:02=A0am, LM <sala.n...@mail.com> wrote:
>
> >The FT2232H and Ethernet are available as small modules, (one is even
> >free on the MaxhXO2 boards..) so start with those, and pull them into
> >the logic only if you really need to.
>
> This seems wise
> So speed of virtual serial port like FTchip is not limited to same way
> as physical RS232 port?

As in set by a legacy 1.8432MHz/16 Motherboard clock, no.

The FT2232H uses 120MHz and divides by 10, and a N/8 fraction
It can do 12MBd/6MBd and fractions below 6MBd, and 12MBd sustained
with largish packets ( >~ 600 bytes from memory), over the high speed
USB link. (and faster  in other modes, but serial is simple)


Article: 153452
Subject: Re: gigabit ethernet problem
From: "salimbaba" <a1234573@n_o_s_p_a_m.n_o_s_p_a_m.owlpic.com>
Date: Mon, 27 Feb 2012 13:45:19 -0600
Links: << >>  << T >>  << A >>
First of all, although not related to your query but in general a good
practice, you need to sync your signals in the FPGA. Like the signals RXD
and RXDV although in sync with the RXCLK, you need to flop them in the
system, then use it wherever you want to. 
Now, few things:
1- why aren't you using the RXDV signal as a write signal to DPRAM and RXD
as input?

2- Also, what you can do is, you can use a Coregen FIFO in your design
instead of DPRAM. For DPRAM, you may require a controller, for FIFO you
won't. So, just to test your logic, you can use FIFO instead. Then start
reading when RXDV goes low.





>>					
>>---------------------------------------		
>>Posted through http://www.FPGARelated.com
>>
>
>hi
>tnx for your suggestion, i am working on the fpga program as you
suggested,
>but my problem still exist,i used chipscope to debug the problem, the
data
>is received fine to fpga but it seemed that the data is not write and
read
>back from dual port ram, here is the code. i don't know what's the
problem
>and how should i proceed? thanks in advanced for help
>
>i read the data received from lan in this process and write in DPRAM,
>generate a strob to transmit process to start sending data at the falling
>edge of RXDV, and capturing the end of packet transmition for reseting
>write address:
>
>	always @(posedge RTL_RXCLK)	
>	begin
>
>                /// Reading Data from RXD pin and save it in dpram
>		if(RTL_RXDV)
>		begin	
>			write_address2 <= write_address2+1;
>			Ram_Data_In <= RTL_RXD;
>			Ram_Write_Enable<=1;
>		end
>		else
>			Ram_Write_Enable<=0;
>
>		///Set Receive Packet Strob to transmit section	
>		pre_RTL_RXDV <= {pre_RTL_RXDV[0],RTL_RXDV} ;		
>		if( ~pre_RTL_RXDV[0] & pre_RTL_RXDV[1])
>		begin
>			loopback_data<=1;
>			PacketReceived <= PacketReceived  +1;
>				
>		end	
>		/// reset Receive Packet Strob  	
>		if(loopback_data)
>		begin
>				DelayCcLpbackData <= DelayCcLpbackData + 1;
>				if(DelayCcLpbackData>=50)
>				begin
>					loopback_data<=0;
>					DelayCcLpbackData<=0;
>				end
>		end
>
>		/// capture End ot Trasmission	
>		preEnd_SendStrobe <= {preEnd_SendStrobe[0],End_SendStrobe};
>		if( preEnd_SendStrobe[0] & ~preEnd_SendStrobe[1])
>		begin
>			write_address2<=0;
>			
>		end
>	end
>	//////	
>	
>	always @(posedge RTL_TXCLK )
>	begin
>	        /// Capture Rising edge of Receive packet Strob generated by
>receive process
>		pre_Loopback_data <= {pre_Loopback_data[0],loopback_data};
>		if(pre_Loopback_data[0] & ~pre_Loopback_data[1])
>		begin
>			StartSendingData<=1;		
>		end
>		
>                // start transmitting data
>		if(StartSendingData)
>		begin		
>			read_address2<=read_address2+1;
>			rgRTL_TXD<=Ram_Data_Out;
>			rgRTL_TXE <=1;
>			re_en<=1;
>			if(read_address2>write_address2)
>			begin
>	      read_address2<=0;	
>		re_en<=0;
>			rgRTL_TXE <=0;
>
>			
>End_Sending_Strobe <= 1;
>			StartSendingData<=0;
>				end	
>		end
>		
>		//////////////
>		if(End_Sending_Strobe)
>		begin
>			DelayCcResetSendStrobe<=DelayCcResetSendStrobe+1;
>			if(DelayCcResetSendStrobe>=50)
>			begin
>				DelayCcResetSendStrobe <= 0;
>				End_Sending_Strobe <= 0;
>			end
>		end
>	
>	end
>	
>
>	 
>	 duall_ram2 duall_ram2_in2
>	(
>			.CLCK_re(RTL_TXCLK), 
>			.CLCK_wr(RTL_RXCLK), 
>			.DIN(Ram_Data_In), 
>			.Re(re_en), 
>			.RE_ADDRESS(read_address2), 
>			.We(Ram_Write_Enable), 
>			.wr_address(write_address2), 
>			.dout(Ram_Data_Out)
>	);
>
>and the module for DPRAM is :
>entity duall_ram2 is
>    Port ( DIN : in std_logic_vector(3 downto 0);
>           RE_ADDRESS : in std_logic_vector(10 downto 0);
>			  wr_address :in std_logic_vector(10 downto 0);
>           CLCK_wr : in std_logic;
>           CLCK_re : in std_logic;
>           We : in std_logic;
>           Re : in std_logic;
>           dout : out std_logic_vector(3 downto 0));
>end duall_ram2 ;
>
>architecture Behavioral of duall_ram2  is
>type my_data is array (0 to 2045)of std_logic_vector(3 downto 0) ;
>signal rom: my_data;
>begin
>
>process (clck_wr)--write
>begin
>   if (clck_wr'event and clck_wr = '0') then
>				if (we = '1') then
>            rom(conv_integer(WR_address)) <= din;
>           
>          end if;
>   end if;
>end process;
>
>process (clck_re)--read
>begin
>   if (clck_re'event and clck_re = '0') then ---e
>         if (Re = '1') then
>             dout<=rom(conv_integer(RE_address));
>         end if;
>    
>   end if;
>end process; 	   
>					
>---------------------------------------		
>Posted through http://www.FPGARelated.com
>	   
					
---------------------------------------		
Posted through http://www.FPGARelated.com

Article: 153453
Subject: Re: gigabit ethernet problem
From: "nba83" <nba_baheri@n_o_s_p_a_m.n_o_s_p_a_m.yahoo.com>
Date: Tue, 28 Feb 2012 22:53:48 -0600
Links: << >>  << T >>  << A >>
Thank you for your useful comments :), my problem was solved . it was due
to writing clk in dpram, this clk was 100mhz and I expected that the data
was surely written in memory before the next rxclk which was 25MHZ, I
changed writing clk to RXCLK and the problem was solved.
But a question, as it seemed to me that syncing signal are important(cause
my problem was exactly due that) how should I do that??
I don't know how to sync RXD and RXDV?
tnx in advanced for help
Neda Baheri


>First of all, although not related to your query but in general a good
>practice, you need to sync your signals in the FPGA. Like the signals RXD
>and RXDV although in sync with the RXCLK, you need to flop them in the
>system, then use it wherever you want to. 
>Now, few things:
>1- why aren't you using the RXDV signal as a write signal to DPRAM and
RXD
>as input?
>
>2- Also, what you can do is, you can use a Coregen FIFO in your design
>instead of DPRAM. For DPRAM, you may require a controller, for FIFO you
>won't. So, just to test your logic, you can use FIFO instead. Then start
>reading when RXDV goes low.
>
>
>
>
>
>>>					
>>>---------------------------------------		
>>>Posted through http://www.FPGARelated.com
>>>
>>
>>hi
>>tnx for your suggestion, i am working on the fpga program as you
>suggested,
>>but my problem still exist,i used chipscope to debug the problem, the
>data
>>is received fine to fpga but it seemed that the data is not write and
>read
>>back from dual port ram, here is the code. i don't know what's the
>problem
>>and how should i proceed? thanks in advanced for help
>>
>>i read the data received from lan in this process and write in DPRAM,
>>generate a strob to transmit process to start sending data at the
falling
>>edge of RXDV, and capturing the end of packet transmition for reseting
>>write address:
>>
>>	always @(posedge RTL_RXCLK)	
>>	begin
>>
>>                /// Reading Data from RXD pin and save it in dpram
>>		if(RTL_RXDV)
>>		begin	
>>			write_address2 <= write_address2+1;
>>			Ram_Data_In <= RTL_RXD;
>>			Ram_Write_Enable<=1;
>>		end
>>		else
>>			Ram_Write_Enable<=0;
>>
>>		///Set Receive Packet Strob to transmit section	
>>		pre_RTL_RXDV <= {pre_RTL_RXDV[0],RTL_RXDV} ;		
>>		if( ~pre_RTL_RXDV[0] & pre_RTL_RXDV[1])
>>		begin
>>			loopback_data<=1;
>>			PacketReceived <= PacketReceived  +1;
>>				
>>		end	
>>		/// reset Receive Packet Strob  	
>>		if(loopback_data)
>>		begin
>>				DelayCcLpbackData <= DelayCcLpbackData + 1;
>>				if(DelayCcLpbackData>=50)
>>				begin
>>					loopback_data<=0;
>>					DelayCcLpbackData<=0;
>>				end
>>		end
>>
>>		/// capture End ot Trasmission	
>>		preEnd_SendStrobe <= {preEnd_SendStrobe[0],End_SendStrobe};
>>		if( preEnd_SendStrobe[0] & ~preEnd_SendStrobe[1])
>>		begin
>>			write_address2<=0;
>>			
>>		end
>>	end
>>	//////	
>>	
>>	always @(posedge RTL_TXCLK )
>>	begin
>>	        /// Capture Rising edge of Receive packet Strob generated by
>>receive process
>>		pre_Loopback_data <= {pre_Loopback_data[0],loopback_data};
>>		if(pre_Loopback_data[0] & ~pre_Loopback_data[1])
>>		begin
>>			StartSendingData<=1;		
>>		end
>>		
>>                // start transmitting data
>>		if(StartSendingData)
>>		begin		
>>			read_address2<=read_address2+1;
>>			rgRTL_TXD<=Ram_Data_Out;
>>			rgRTL_TXE <=1;
>>			re_en<=1;
>>			if(read_address2>write_address2)
>>			begin
>>	      read_address2<=0;	
>>		re_en<=0;
>>			rgRTL_TXE <=0;
>>
>>			
>>End_Sending_Strobe <= 1;
>>			StartSendingData<=0;
>>				end	
>>		end
>>		
>>		//////////////
>>		if(End_Sending_Strobe)
>>		begin
>>			DelayCcResetSendStrobe<=DelayCcResetSendStrobe+1;
>>			if(DelayCcResetSendStrobe>=50)
>>			begin
>>				DelayCcResetSendStrobe <= 0;
>>				End_Sending_Strobe <= 0;
>>			end
>>		end
>>	
>>	end
>>	
>>
>>	 
>>	 duall_ram2 duall_ram2_in2
>>	(
>>			.CLCK_re(RTL_TXCLK), 
>>			.CLCK_wr(RTL_RXCLK), 
>>			.DIN(Ram_Data_In), 
>>			.Re(re_en), 
>>			.RE_ADDRESS(read_address2), 
>>			.We(Ram_Write_Enable), 
>>			.wr_address(write_address2), 
>>			.dout(Ram_Data_Out)
>>	);
>>
>>and the module for DPRAM is :
>>entity duall_ram2 is
>>    Port ( DIN : in std_logic_vector(3 downto 0);
>>           RE_ADDRESS : in std_logic_vector(10 downto 0);
>>			  wr_address :in std_logic_vector(10 downto 0);
>>           CLCK_wr : in std_logic;
>>           CLCK_re : in std_logic;
>>           We : in std_logic;
>>           Re : in std_logic;
>>           dout : out std_logic_vector(3 downto 0));
>>end duall_ram2 ;
>>
>>architecture Behavioral of duall_ram2  is
>>type my_data is array (0 to 2045)of std_logic_vector(3 downto 0) ;
>>signal rom: my_data;
>>begin
>>
>>process (clck_wr)--write
>>begin
>>   if (clck_wr'event and clck_wr = '0') then
>>				if (we = '1') then
>>            rom(conv_integer(WR_address)) <= din;
>>           
>>          end if;
>>   end if;
>>end process;
>>
>>process (clck_re)--read
>>begin
>>   if (clck_re'event and clck_re = '0') then ---e
>>         if (Re = '1') then
>>             dout<=rom(conv_integer(RE_address));
>>         end if;
>>    
>>   end if;
>>end process; 	   
>>					
>>---------------------------------------		
>>Posted through http://www.FPGARelated.com
>>	   
>					
>---------------------------------------		
>Posted through http://www.FPGARelated.com
>	   
					
---------------------------------------		
Posted through http://www.FPGARelated.com

Article: 153454
Subject: Touchscreen For Terasic Technologies DE0 Nano
From: "Snowy" <snowybrown@charter.net>
Date: Thu, 1 Mar 2012 16:03:26 -0500
Links: << >>  << T >>  << A >>
Hi,

I am looking for a touchscreen for an DE0 Nano.  Terasic's LTM touchscreen 
is supposed to work but the LTM manual does not mention it.  Are there 
others?  A seven inch screen is preferred.

Thanks,
Gary


Article: 153455
Subject: JTAG to obsolete Lattice MACH131?
From: EML <nospam@nospam.com>
Date: Fri, 02 Mar 2012 10:00:53 +0000
Links: << >>  << T >>  << A >>
I've got a strange one. Someone's asked me to reprogram an old
MACH131SP device, dating from about '95-98. Are any of you still doing
this? Any advice? I don't yet know if they have sources (presumably
Abel?) or a bitstream.

I've got lots of old Lattice software, dating from about 95-2000 - an
ispExpert box (floppies probably lost), and a couple of ispDS+ Abel
boxes, with lots of floppies, but possibly only supporting pLSI 1K,
2K, and 3K families.

I can't find any old JTAG adapters, but I can presumably get access
with a current Xilinx Platform Cable USB II.

Any thoughts? BTW, I haven't been here for a few years - is this still
a good place for FPGAs? What about Stackoverflow/etc?

Thanks -

Evan



Article: 153456
Subject: Migrating Spartan2 design (xnf)
From: nico@puntnl.niks (Nico Coesel)
Date: Fri, 02 Mar 2012 14:00:51 GMT
Links: << >>  << T >>  << A >>
Because the Xilinx Spartan2 is going to be discontinued in the near
future one of my customers asked me to migrate their designs to a
newer Xilinx FPGA. Perhaps Spartan 6 or Artix 7. The problems are:

- these designs where originally created for the 4000 series using
schematic capture (XNF format) then moved to Virtex and finally to
Spartan 2. Newer parts where written in VHDL though.

- The designs contain some async logic (especially the part talking to
an MCU using an addres/data bus) and locally divided clocks.

- I'm worried at some point extra gates where added to increase the
delay. This will break in a much faster FPGA.

- The design contains bi-directional busses in several places.

My approach would be to convert the XNF parts to VHDL (does someone
sell software to do that?) and then check for anomalies due to changes
in the FPGA architecture. This could be a huge task. The XNF parts
represent several years worth of work. 

Any suggestions on how to tackle such a project?

-- 
Failure does not prove something is impossible, failure simply
indicates you are not using the right tools...
nico@nctdevpuntnl (punt=.)
--------------------------------------------------------------

Article: 153457
Subject: Re: JTAG to obsolete Lattice MACH131?
From: Martin Thompson <martin.j.thompson@trw.com>
Date: Fri, 02 Mar 2012 14:04:10 +0000
Links: << >>  << T >>  << A >>
EML <nospam@nospam.com> writes:

> I've got a strange one. Someone's asked me to reprogram an old
> MACH131SP device, dating from about '95-98. Are any of you still doing
> this? Any advice? I don't yet know if they have sources (presumably
> Abel?) or a bitstream.
>
> I've got lots of old Lattice software, dating from about 95-2000 - an
> ispExpert box (floppies probably lost), and a couple of ispDS+ Abel
> boxes, with lots of floppies, but possibly only supporting pLSI 1K,
> 2K, and 3K families.
>
> I can't find any old JTAG adapters, but I can presumably get access
> with a current Xilinx Platform Cable USB II.

If you can find parallel port, there's probably the wiring diagram for a
PP to JTAG cable - I know I used a Vantis cable to program some oldish
Lattice chips using ispLever Classic recently.

>
> Any thoughts? BTW, I haven't been here for a few years - is this still
> a good place for FPGAs? What about Stackoverflow/etc?

There's still people here :)

Electronics.stackexchange also covers FPGAs some of the time:

http://electronics.stackexchange.com/questions/tagged/fpga

and there's a "logic design" proposal on stackexchange also:

http://area51.stackexchange.com/proposals/20632/logic-design?referrer=ZolqNc0edhvG1iedac--IA2

Cheers,
Martin

-- 
martin.j.thompson@trw.com 
TRW Conekt - Consultancy in Engineering, Knowledge and Technology
http://www.conekt.co.uk/capabilities/39-electronic-hardware

Article: 153458
Subject: configuring an Altera Cyclone 3
From: John Larkin <jlarkin@highlandtechnology.com>
Date: Fri, 02 Mar 2012 10:39:34 -0800
Links: << >>  << T >>  << A >>


Hi,

I have an FPGA design that works from JTAG, and now I want to burn a
serial flash chip so it will configure itself at powerup. The mode
pins should be right for serial self-load, and we'll be using a
standard serial flash chip, an M25P16. We have a B&K USB flash burner.

I've read the Altera lit and it's not entirely clear to me, so I'd
appreciate some help.

What Altera file format should I use to burn the serial flash chip?
RBF? RPD? Should I tell the programmer to swap ends on bytes or words?

Thanks

John



-- 

John Larkin, President
Highland Technology, Inc

jlarkin at highlandtechnology dot com
http://www.highlandtechnology.com

Precision electronic instrumentation
Picosecond-resolution Digital Delay and Pulse generators
Custom laser controllers
Photonics and fiberoptic TTL data links
VME thermocouple, LVDT, synchro   acquisition and simulation

Article: 153459
Subject: Re: JTAG to obsolete Lattice MACH131?
From: Gabor <gabor@szakacs.invalid>
Date: Fri, 02 Mar 2012 14:01:13 -0500
Links: << >>  << T >>  << A >>
Martin Thompson wrote:
> EML <nospam@nospam.com> writes:
> 
>> I've got a strange one. Someone's asked me to reprogram an old
>> MACH131SP device, dating from about '95-98. Are any of you still doing
>> this? Any advice? I don't yet know if they have sources (presumably
>> Abel?) or a bitstream.
>>
>> I've got lots of old Lattice software, dating from about 95-2000 - an
>> ispExpert box (floppies probably lost), and a couple of ispDS+ Abel
>> boxes, with lots of floppies, but possibly only supporting pLSI 1K,
>> 2K, and 3K families.
>>
>> I can't find any old JTAG adapters, but I can presumably get access
>> with a current Xilinx Platform Cable USB II.
> 
> If you can find parallel port, there's probably the wiring diagram for a
> PP to JTAG cable - I know I used a Vantis cable to program some oldish
> Lattice chips using ispLever Classic recently.
> 
>> Any thoughts? BTW, I haven't been here for a few years - is this still
>> a good place for FPGAs? What about Stackoverflow/etc?
> 
> There's still people here :)
> 
> Electronics.stackexchange also covers FPGAs some of the time:
> 
> http://electronics.stackexchange.com/questions/tagged/fpga
> 
> and there's a "logic design" proposal on stackexchange also:
> 
> http://area51.stackexchange.com/proposals/20632/logic-design?referrer=ZolqNc0edhvG1iedac--IA2
> 
> Cheers,
> Martin
> 

Lattice also has user forums, but I don't see a lot of activity there.
The last time I used a MACH131 or similar part, it was in a PLCC package
and I programmed it on a programming platform, probably from Data I/O.
You should still be able to do it with a newer box like the BP1400
or whatever the latest BP-Micro programming system is.  The data
file for these parts was in JEDEC format if I remember correctly.

-- Gabor

Article: 153460
Subject: Re: Migrating Spartan2 design (xnf)
From: Gabor <gabor@szakacs.invalid>
Date: Fri, 02 Mar 2012 14:11:01 -0500
Links: << >>  << T >>  << A >>
Nico Coesel wrote:
> Because the Xilinx Spartan2 is going to be discontinued in the near
> future one of my customers asked me to migrate their designs to a
> newer Xilinx FPGA. Perhaps Spartan 6 or Artix 7. The problems are:
> 
> - these designs where originally created for the 4000 series using
> schematic capture (XNF format) then moved to Virtex and finally to
> Spartan 2. Newer parts where written in VHDL though.
> 
> - The designs contain some async logic (especially the part talking to
> an MCU using an addres/data bus) and locally divided clocks.
> 
> - I'm worried at some point extra gates where added to increase the
> delay. This will break in a much faster FPGA.
> 
> - The design contains bi-directional busses in several places.
> 
> My approach would be to convert the XNF parts to VHDL (does someone
> sell software to do that?) and then check for anomalies due to changes
> in the FPGA architecture. This could be a huge task. The XNF parts
> represent several years worth of work. 
> 
> Any suggestions on how to tackle such a project?
> 

What was the schematic capture used for the schematics?  I believe that
XNF is just the netlist format derived from the schematics.  I had
older projects from this era using both Alliance tools with ViewDraw
schematics, and Foundation tools with Aldec schematics.  I know
that at least the ViewDraw tools were capable of outputing a VHDL
structural netlist, perhaps the Aldec tools did, too.  If you don't
still have an active copy of the original tools, I believe newer
versions of Mentor tools can still import older Viewdraw schematics,
and Aldec tools can still import the old Xilinx Foundation schematics.
It's up to you whether the tool cost is worth more than the
re-engineering.  In the end, if I were doing this, I'd try to
understand what the schematic sections were doing and hand
convert them to a modern HDL (behavioral).  Then you'd have a
better chance of being able to maintain the design down the road.

On another note, all of the parts you mentioned were 5V tolerant.
I'm not sure what sort of micro's you're interfacing, but if you still
have 5V logic in the system any newer parts will need level
translators, too.

-- Gabor

Article: 153461
Subject: Re: configuring an Altera Cyclone 3
From: "Andy Bartlett" <andyb@nospamming.net>
Date: Fri, 2 Mar 2012 19:20:48 -0000
Links: << >>  << T >>  << A >>

"John Larkin" <jlarkin@highlandtechnology.com> wrote in message 
news:3v42l7t4eij7lq6hqj0ui6vmepg744fsup@4ax.com...
>
>
> Hi,
>
> I have an FPGA design that works from JTAG, and now I want to burn a
> serial flash chip so it will configure itself at powerup. The mode
> pins should be right for serial self-load, and we'll be using a
> standard serial flash chip, an M25P16. We have a B&K USB flash burner.
>
> I've read the Altera lit and it's not entirely clear to me, so I'd
> appreciate some help.
>
> What Altera file format should I use to burn the serial flash chip?
> RBF? RPD? Should I tell the programmer to swap ends on bytes or words?
>
> Thanks
>
> John
>

Why don't you use the Altera EPCS16 or whatever will support your size 
device? Connect up to the FPGA with a download socket, configure the MSEL 
pins as per your IO block volts - use AS mode. Use a Terasic USB Blaster, 
the quartus programmer and the POF file and your good to go.

- see the device programming section in the Cyclone III manual.

Andy 



Article: 153462
Subject: Re: configuring an Altera Cyclone 3
From: John Larkin <jlarkin@highlandtechnology.com>
Date: Fri, 02 Mar 2012 11:40:23 -0800
Links: << >>  << T >>  << A >>
On Fri, 2 Mar 2012 19:20:48 -0000, "Andy Bartlett"
<andyb@nospamming.net> wrote:

>
>"John Larkin" <jlarkin@highlandtechnology.com> wrote in message 
>news:3v42l7t4eij7lq6hqj0ui6vmepg744fsup@4ax.com...
>>
>>
>> Hi,
>>
>> I have an FPGA design that works from JTAG, and now I want to burn a
>> serial flash chip so it will configure itself at powerup. The mode
>> pins should be right for serial self-load, and we'll be using a
>> standard serial flash chip, an M25P16. We have a B&K USB flash burner.
>>
>> I've read the Altera lit and it's not entirely clear to me, so I'd
>> appreciate some help.
>>
>> What Altera file format should I use to burn the serial flash chip?
>> RBF? RPD? Should I tell the programmer to swap ends on bytes or words?
>>
>> Thanks
>>
>> John
>>
>
>Why don't you use the Altera EPCS16 or whatever will support your size 
>device? Connect up to the FPGA with a download socket, configure the MSEL 
>pins as per your IO block volts - use AS mode. Use a Terasic USB Blaster, 
>the quartus programmer and the POF file and your good to go.

We want our production people to do this the way they do everything
else: program the plugin flash chip at their device programming
station, plug it into the board, test and ship. So we want to formally
release a file that can be burned into the flash chip on a production
basis.

>
>- see the device programming section in the Cyclone III manual.
>

I have, and it's not all clear to me. I was hoping that someone here
could help, so that I didn't have to try different file formats and
byte swaps until I got it to configure.

Thanks


-- 

John Larkin, President
Highland Technology, Inc

jlarkin at highlandtechnology dot com
http://www.highlandtechnology.com

Precision electronic instrumentation
Picosecond-resolution Digital Delay and Pulse generators
Custom laser controllers
Photonics and fiberoptic TTL data links
VME thermocouple, LVDT, synchro   acquisition and simulation

Article: 153463
Subject: Re: Migrating Spartan2 design (xnf)
From: nico@puntnl.niks (Nico Coesel)
Date: Fri, 02 Mar 2012 22:09:22 GMT
Links: << >>  << T >>  << A >>
Gabor <gabor@szakacs.invalid> wrote:

>Nico Coesel wrote:
>> Because the Xilinx Spartan2 is going to be discontinued in the near
>> future one of my customers asked me to migrate their designs to a
>> newer Xilinx FPGA. Perhaps Spartan 6 or Artix 7. The problems are:
>> 
>> - these designs where originally created for the 4000 series using
>> schematic capture (XNF format) then moved to Virtex and finally to
>> Spartan 2. Newer parts where written in VHDL though.
>> 
>> - The designs contain some async logic (especially the part talking to
>> an MCU using an addres/data bus) and locally divided clocks.
>> 
>> - I'm worried at some point extra gates where added to increase the
>> delay. This will break in a much faster FPGA.
>> 
>> - The design contains bi-directional busses in several places.
>> 
>> My approach would be to convert the XNF parts to VHDL (does someone
>> sell software to do that?) and then check for anomalies due to changes
>> in the FPGA architecture. This could be a huge task. The XNF parts
>> represent several years worth of work. 
>> 
>> Any suggestions on how to tackle such a project?
>> 
>
>What was the schematic capture used for the schematics?  I believe that

Orcad 9.0. That was the last version of Orcad for which the XNF
netlist DLL worked.

>It's up to you whether the tool cost is worth more than the
>re-engineering.  In the end, if I were doing this, I'd try to
>understand what the schematic sections were doing and hand
>convert them to a modern HDL (behavioral).  Then you'd have a
>better chance of being able to maintain the design down the road.

True but there is *years* worth of schematics. Some of the stuff is
not trivial either (think signal processing). A few years ago they
called me in to fix a VHDL problem and at that point they had
converted the XNF files into NGC or NGD files in order to use newer
Xilinx tools. I doubt its possible to take an NGC/NGD file to another
FPGA family. 

Still, functional verification is going to be a tough job.

>On another note, all of the parts you mentioned were 5V tolerant.
>I'm not sure what sort of micro's you're interfacing, but if you still
>have 5V logic in the system any newer parts will need level
>translators, too.

For now I consider that an insignificant problem compared to the FPGA
designs :-) 

-- 
Failure does not prove something is impossible, failure simply
indicates you are not using the right tools...
nico@nctdevpuntnl (punt=.)
--------------------------------------------------------------

Article: 153464
Subject: Re: Migrating Spartan2 design (xnf)
From: Gabor <gabor@alacron.com>
Date: Sat, 3 Mar 2012 09:06:42 -0800 (PST)
Links: << >>  << T >>  << A >>
On Mar 2, 5:09=A0pm, n...@puntnl.niks (Nico Coesel) wrote:
> Gabor <ga...@szakacs.invalid> wrote:
> >Nico Coesel wrote:
> >> Because the Xilinx Spartan2 is going to be discontinued in the near
> >> future one of my customers asked me to migrate their designs to a
> >> newer Xilinx FPGA. Perhaps Spartan 6 or Artix 7. The problems are:
>
> >> - these designs where originally created for the 4000 series using
> >> schematic capture (XNF format) then moved to Virtex and finally to
> >> Spartan 2. Newer parts where written in VHDL though.
>
> >> - The designs contain some async logic (especially the part talking to
> >> an MCU using an addres/data bus) and locally divided clocks.
>
> >> - I'm worried at some point extra gates where added to increase the
> >> delay. This will break in a much faster FPGA.
>
> >> - The design contains bi-directional busses in several places.
>
> >> My approach would be to convert the XNF parts to VHDL (does someone
> >> sell software to do that?) and then check for anomalies due to changes
> >> in the FPGA architecture. This could be a huge task. The XNF parts
> >> represent several years worth of work.
>
> >> Any suggestions on how to tackle such a project?
>
> >What was the schematic capture used for the schematics? =A0I believe tha=
t
>
> Orcad 9.0. That was the last version of Orcad for which the XNF
> netlist DLL worked.
>
> >It's up to you whether the tool cost is worth more than the
> >re-engineering. =A0In the end, if I were doing this, I'd try to
> >understand what the schematic sections were doing and hand
> >convert them to a modern HDL (behavioral). =A0Then you'd have a
> >better chance of being able to maintain the design down the road.
>
> True but there is *years* worth of schematics. Some of the stuff is
> not trivial either (think signal processing). A few years ago they
> called me in to fix a VHDL problem and at that point they had
> converted the XNF files into NGC or NGD files in order to use newer
> Xilinx tools. I doubt its possible to take an NGC/NGD file to another
> FPGA family.
>
> Still, functional verification is going to be a tough job.
>
> >On another note, all of the parts you mentioned were 5V tolerant.
> >I'm not sure what sort of micro's you're interfacing, but if you still
> >have 5V logic in the system any newer parts will need level
> >translators, too.
>
> For now I consider that an insignificant problem compared to the FPGA
> designs :-)
>
> --
> Failure does not prove something is impossible, failure simply
> indicates you are not using the right tools...
> nico@nctdevpuntnl (punt=3D.)
> --------------------------------------------------------------

I'm sorry, but I generally measure schematics in pages or symbols
rather than time.  "Years" of design time does not necessarily mean
that it would take a similar time to copy, translate, or re-design
given
the existing knowledge base.  Signal processing in particular very
often represents a number of regular structures like filters for which
you have many more options for implementation now.  In fact you
could end up with very inefficient use of newer devices if you don't
rework a lot of the design to use the available DSP functions that
were not available on Spartan 2 or earlier devices.  You'll probably
need to re-work the bidirectional buses (I assume you mean
internal?) since newer parts have not internal tri-state drivers.
So in the end there's probably not a real simple method to run
your old project through some tools to come up with a working
design on a new platform.

Regards,
Gabor

Article: 153465
Subject: Re: configuring an Altera Cyclone 3
From: Michael S <already5chosen@yahoo.com>
Date: Sat, 3 Mar 2012 10:08:00 -0800 (PST)
Links: << >>  << T >>  << A >>
On Mar 2, 9:40=A0pm, John Larkin <jlar...@highlandtechnology.com> wrote:
> On Fri, 2 Mar 2012 19:20:48 -0000, "Andy Bartlett"
>
> <an...@nospamming.net> wrote:
>
> >"John Larkin" <jlar...@highlandtechnology.com> wrote in message
> >news:3v42l7t4eij7lq6hqj0ui6vmepg744fsup@4ax.com...
>
> >> Hi,
>
> >> I have an FPGA design that works from JTAG, and now I want to burn a
> >> serial flash chip so it will configure itself at powerup. The mode
> >> pins should be right for serial self-load, and we'll be using a
> >> standard serial flash chip, an M25P16. We have a B&K USB flash burner.
>
> >> I've read the Altera lit and it's not entirely clear to me, so I'd
> >> appreciate some help.
>
> >> What Altera file format should I use to burn the serial flash chip?
> >> RBF? RPD? Should I tell the programmer to swap ends on bytes or words?
>
> >> Thanks
>
> >> John
>
> >Why don't you use the Altera EPCS16 or whatever will support your size
> >device? Connect up to the FPGA with a download socket, configure the MSE=
L
> >pins as per your IO block volts - use AS mode. Use a Terasic USB Blaster=
,
> >the quartus programmer and the POF file and your good to go.
>
> We want our production people to do this the way they do everything
> else: program the plugin flash chip at their device programming
> station, plug it into the board, test and ship. So we want to formally
> release a file that can be burned into the flash chip on a production
> basis.
>
>
>
> >- see the device programming section in the Cyclone III manual.
>
> I have, and it's not all clear to me. I was hoping that someone here
> could help, so that I didn't have to try different file formats and
> byte swaps until I got it to configure.
>
> Thanks
>
> --
>
> John Larkin, President
> Highland Technology, Inc
>
> jlarkin at highlandtechnology dot comhttp://www.highlandtechnology.com
>
> Precision electronic instrumentation
> Picosecond-resolution Digital Delay and Pulse generators
> Custom laser controllers
> Photonics and fiberoptic TTL data links
> VME thermocouple, LVDT, synchro =A0 acquisition and simulation

One possible way is to use sof2flash utility supplied with Nios2 SDK.
I generates .flash file in Motorola S3 format. Then, if you want, you
can convert to intel hex or to plain binary with standard objcopy
utility.

But programming the way you chose is certainly not the fastest.
One of faster ways is:
1, Create small FPGA design that contains only nios2 processor and
Altera's epcs component.
2. Load it to your Cyclon with quartus programmer.
3. Burn flash with nios2-flash-programmer utility.

Article: 153466
Subject: Re: configuring an Altera Cyclone 3
From: John Larkin <jlarkin@highlandtechnology.com>
Date: Sat, 03 Mar 2012 12:12:11 -0800
Links: << >>  << T >>  << A >>
On Fri, 02 Mar 2012 10:39:34 -0800, John Larkin
<jlarkin@highlandtechnology.com> wrote:

>
>
>Hi,
>
>I have an FPGA design that works from JTAG, and now I want to burn a
>serial flash chip so it will configure itself at powerup. The mode
>pins should be right for serial self-load, and we'll be using a
>standard serial flash chip, an M25P16. We have a B&K USB flash burner.
>
>I've read the Altera lit and it's not entirely clear to me, so I'd
>appreciate some help.
>
>What Altera file format should I use to burn the serial flash chip?
>RBF? RPD? Should I tell the programmer to swap ends on bytes or words?
>
>Thanks
>
>John


OK, I got it to work:

Get the THING.RBF file from the Altera software. Bit-swap all the
bytes and save as THING.ROM. Program that into an M25P16 serial flash
chip on the B&K USB programmer. Plug that in.

I wrote a little Windows command-line bit swapper program if anybody
wants it.


-- 

John Larkin, President
Highland Technology, Inc

jlarkin at highlandtechnology dot com
http://www.highlandtechnology.com

Precision electronic instrumentation
Picosecond-resolution Digital Delay and Pulse generators
Custom laser controllers
Photonics and fiberoptic TTL data links
VME thermocouple, LVDT, synchro   acquisition and simulation

Article: 153467
Subject: Re: Migrating Spartan2 design (xnf)
From: glen herrmannsfeldt <gah@ugcs.caltech.edu>
Date: Sat, 3 Mar 2012 20:36:03 +0000 (UTC)
Links: << >>  << T >>  << A >>
Gabor <gabor@alacron.com> wrote:

(snip)
> I'm sorry, but I generally measure schematics in pages or symbols
> rather than time.  "Years" of design time does not necessarily mean
> that it would take a similar time to copy, translate, or re-design
> given the existing knowledge base.  

It could even take longer, but one would hope not.

> Signal processing in particular very often represents a 
> number of regular structures like filters for which
> you have many more options for implementation now.  In fact you
> could end up with very inefficient use of newer devices if you don't
> rework a lot of the design to use the available DSP functions that
> were not available on Spartan 2 or earlier devices.  

The CLB changed pretty significantly from XC4000 to Spartan,
especially in the carry logic. That may or may not matter to
a specific design.

> You'll probably need to re-work the bidirectional buses 
> (I assume you mean internal?) since newer parts have not 
> internal tri-state drivers.

As I understand it, the tools will simulate tri-state lines.
Depending on the design, they may do better or worse than
a person would redesigning the same logic.

> So in the end there's probably not a real simple method to run
> your old project through some tools to come up with a working
> design on a new platform.

Even the smallest of the newer families is pretty large, so it
might be that one can throw more logic to the problem for
the same result. Likely, though, that one can get the existing
design to run faster, or otherwise better, adapting to the
new family.

-- glen

Article: 153468
Subject: Re: configuring an Altera Cyclone 3
From: Anssi Saari <as@sci.fi>
Date: Sun, 04 Mar 2012 11:20:55 +0200
Links: << >>  << T >>  << A >>
John Larkin <jlarkin@highlandtechnology.com> writes:

> What Altera file format should I use to burn the serial flash chip?
> RBF? RPD? Should I tell the programmer to swap ends on bytes or words?

My experience on the last part is, you may just have to experiment to
find out. We used a 16-bit parallel flash in byte mode once and had a
CPLD read the flash in byte mode and push the data to the FPGA (Virtex 4
from Xilinx).

The problem was, there was just no information on the flash data sheet
about the byte order in byte mode. So we experimented and figured out
which way the data should be in the flash, writing the flash with the on
board software at that point. And of course when we wanted to write the
flash with a programmer, things were the opposite of the software
situation... Byte swap was explicitly done in software, but somehow the
flash programmer needed byte swap off to create the same flash contents.

Article: 153469
Subject: Error JTAG chain problem detected
From: "majsta" <imajstorovic@n_o_s_p_a_m.n_o_s_p_a_m.yahoo.com>
Date: Mon, 05 Mar 2012 04:16:03 -0600
Links: << >>  << T >>  << A >>
My design worked for about 3 hours and now gives me this error. I just
can't understand what is wrong with it now. I didn't do anything wrong.

!Error: JTAG chain problem detected
!Error: The TDI connection to the first detected device EP2C8 might be
shorted to VCC or is an open circuit
!Error: The TCK and TMS connections to the device before the first detected
device EP2C8 might have a problem
!Info: Detected 1 device(s)
!Info: Device 1: EP2C8

device is EP2C8Q208C8

TDI pulled high with 10Kohm resistor also TMS
TCK pulled down with same resistor value
Pin 2 on JTAG header connected to GND
Pins 4 and 6 connected to VCC 3.3V
Pin 10 connected to GND
TDO connected directly to cyclone II
MSEL 0 and 1 to GND
nCE to GND
also on board is used EPCS4SI8 but I disconnect that one but problem
remains.	   
					
---------------------------------------		
Posted through http://www.FPGARelated.com

Article: 153470
Subject: FPGA Area
From: Shakes <shakith.fernando@gmail.com>
Date: Tue, 6 Mar 2012 05:43:14 -0800 (PST)
Links: << >>  << T >>  << A >>
Hi all,

I have question on measuring FPGA area. Measuring area cost of the FPGA implementation is tricky because there
are several different area types LUT, FF, BRAM, DSP. Is there way look
at a uniform cost model which combines all of then.

1. Some early version of ISE had equivalent gate count number for an
VHDL implementation. But it's not available anymore.
2. Slices seems to be the common unit of comparison. This is consists
of LUT and FF. But how about BRAM, DSP.
Can I say estimate the BRAM cost like this?
One 6input LUT(V6) = 64 x 1 bit RAM
1 Slice = 4 LUT = 256 x 1 bit RAM
1BRAM = 36kb => 144 slices

For DSP, I wrote simple code with 25x18 multiplier and then 48 bit
accumulator and set no dsp usage in synthesis to get the slice number
as 154 slices. (This was done using a Virtex 6.)

Is this a good estimate? 
Are they are any alternative ways to measure an uniform cost of FPGA
implementation?

Thanks in advance.:)

Article: 153471
Subject: Re: FPGA Area
From: rickman <gnuarm@gmail.com>
Date: Tue, 6 Mar 2012 05:56:25 -0800 (PST)
Links: << >>  << T >>  << A >>
On Mar 6, 8:43=A0am, Shakes <shakith.ferna...@gmail.com> wrote:
> Hi all,
>
> I have question on measuring FPGA area. Measuring area cost of the FPGA i=
mplementation is tricky because there
> are several different area types LUT, FF, BRAM, DSP. Is there way look
> at a uniform cost model which combines all of then.
>
> 1. Some early version of ISE had equivalent gate count number for an
> VHDL implementation. But it's not available anymore.
> 2. Slices seems to be the common unit of comparison. This is consists
> of LUT and FF. But how about BRAM, DSP.
> Can I say estimate the BRAM cost like this?
> One 6input LUT(V6) =3D 64 x 1 bit RAM
> 1 Slice =3D 4 LUT =3D 256 x 1 bit RAM
> 1BRAM =3D 36kb =3D> 144 slices
>
> For DSP, I wrote simple code with 25x18 multiplier and then 48 bit
> accumulator and set no dsp usage in synthesis to get the slice number
> as 154 slices. (This was done using a Virtex 6.)
>
> Is this a good estimate?
> Are they are any alternative ways to measure an uniform cost of FPGA
> implementation?
>
> Thanks in advance.:)

I'm not clear on what you are trying to achieve.  The point of
including RAM and DSP on FPGAs is to reduce the area used as well as
accelerate the speed of designs.  So why would you want to count the
slice usage of a design that you expect will be implemented using DSP
blocks?  Are you going to count the equivalent slices for a memory
based design?

What do you want this number for?

Rick

Article: 153472
Subject: Re: FPGA Area
From: glen herrmannsfeldt <gah@ugcs.caltech.edu>
Date: Tue, 6 Mar 2012 14:00:39 +0000 (UTC)
Links: << >>  << T >>  << A >>
Shakes <shakith.fernando@gmail.com> wrote:

> I have question on measuring FPGA area. Measuring area cost 
> of the FPGA implementation is tricky because there
> are several different area types LUT, FF, BRAM, DSP. Is there way look
> at a uniform cost model which combines all of then.

Useful measurments before BRAM and DSP were never very good, 
but now it is close to impossible.

Why do you want such a measurment? The result might depend on why.

> 1. Some early version of ISE had equivalent gate count number for an
> VHDL implementation. But it's not available anymore.
> 2. Slices seems to be the common unit of comparison. This is consists
> of LUT and FF. But how about BRAM, DSP.

But slices usually have more than one LUT and FF, and many
are now using 6LUT instead of the previous 4LUT.

> Can I say estimate the BRAM cost like this?

Many designs don't use BRAM at all, others might not use FF,
yet they are still on the chip. 

> One 6input LUT(V6) = 64 x 1 bit RAM
> 1 Slice = 4 LUT = 256 x 1 bit RAM
> 1BRAM = 36kb => 144 slices

The traditional ASIC method was the equivalent in 2 input NAND,
which is four transistors in CMOS. So the conversion was to
take the number of transistors and divide by four. Not so bad.

If you figure the average gates used in a LUT, convert with that.
An FF might be about four gate equivalent.

The usual SRAM cell is four transistors, plus one or two for gating,
plus address decoding. So 1.5 to 2 gates/bit might be close.

> For DSP, I wrote simple code with 25x18 multiplier and then 48 bit
> accumulator and set no dsp usage in synthesis to get the slice number
> as 154 slices. (This was done using a Virtex 6.)

> Is this a good estimate? 
> Are they are any alternative ways to measure an uniform 
> cost of FPGA implementation?

Not really. I have a design that is scalable, so I can vary the
amount of logic in a chip. For a fairly wide range, the speed is
almost inversely proportional to the amount of logic. That is 
likely true for other designs. That means that if you give a size,
you also should give an appropriate speed.

-- glen


Article: 153473
Subject: Re: FPGA Area
From: Gabor <gabor@szakacs.invalid>
Date: Tue, 06 Mar 2012 09:01:56 -0500
Links: << >>  << T >>  << A >>
Shakes wrote:
> Hi all,
> 
> I have question on measuring FPGA area. Measuring area cost of the FPGA implementation is tricky because there
> are several different area types LUT, FF, BRAM, DSP. Is there way look
> at a uniform cost model which combines all of then.
> 
> 1. Some early version of ISE had equivalent gate count number for an
> VHDL implementation. But it's not available anymore.
> 2. Slices seems to be the common unit of comparison. This is consists
> of LUT and FF. But how about BRAM, DSP.
> Can I say estimate the BRAM cost like this?
> One 6input LUT(V6) = 64 x 1 bit RAM
> 1 Slice = 4 LUT = 256 x 1 bit RAM
> 1BRAM = 36kb => 144 slices
> 
> For DSP, I wrote simple code with 25x18 multiplier and then 48 bit
> accumulator and set no dsp usage in synthesis to get the slice number
> as 154 slices. (This was done using a Virtex 6.)
> 
> Is this a good estimate? 
> Are they are any alternative ways to measure an uniform cost of FPGA
> implementation?
> 
> Thanks in advance.:)

Unless your design is intended to be implemented in an ASIC, it doesn't
make a lot of sense to look for a uniform metric like gate count.  In
an FPGA, you get a limited number of each resource.  At least for
Xilinx tools, you also get a report showing the percentage of each
resource used by your design.  If you wanted to know how many of
your designs fit in a given FPGA, or how much of the FPGA is left
over for other stuff, then the percentage of each resource is
the best way to look at it.  If you insist on applying a single
metric, then I would suggest considering each resource based on
the number available.  For example if your device has 14K LUTs
and 140 block RAMs, then a block RAM would be worth 100 LUTs
because that's the ratio of LUTs to BRAM in that device.  Still,
an end user of your design would need to know the individual
numbers in order to get a useful estimate of the FPGA required
based on used and remaining resources.

-- Gabor

Article: 153474
Subject: Re: FPGA Area
From: Kolja Sulimma <ksulimma@googlemail.com>
Date: Tue, 6 Mar 2012 06:29:21 -0800 (PST)
Links: << >>  << T >>  << A >>
On Mar 6, 2:43=A0pm, Shakes <shakith.ferna...@gmail.com> wrote:
> 2. Slices seems to be the common unit of comparison.

Slices are often used, but they are a stupid way to compare area.
The real comparison for logic area is LUTs.
The number of slices will depend greatly on placement. In an FPGA
that is mostly empty a circuit might spread out evenly and it might be
that there is only one LUT placed into each slice.
The same circuit mapped to the same number of LUTs might take up
only half the number of slices if placed into a smaller FPGAs, because
each slice gets two LUTs. The LUTs in a slice are greatly
independent,
so this is  almost always possible, the tools just don't do it if it
isn't
necessary.

The LUT count will remain the same in both cases, so that should be
used
for comparison.

Kolja







Site Home   Archive Home   FAQ Home   How to search the Archive   How to Navigate the Archive   
Compare FPGA features and resources   

Threads starting:
1994JulAugSepOctNovDec1994
1995JanFebMarAprMayJunJulAugSepOctNovDec1995
1996JanFebMarAprMayJunJulAugSepOctNovDec1996
1997JanFebMarAprMayJunJulAugSepOctNovDec1997
1998JanFebMarAprMayJunJulAugSepOctNovDec1998
1999JanFebMarAprMayJunJulAugSepOctNovDec1999
2000JanFebMarAprMayJunJulAugSepOctNovDec2000
2001JanFebMarAprMayJunJulAugSepOctNovDec2001
2002JanFebMarAprMayJunJulAugSepOctNovDec2002
2003JanFebMarAprMayJunJulAugSepOctNovDec2003
2004JanFebMarAprMayJunJulAugSepOctNovDec2004
2005JanFebMarAprMayJunJulAugSepOctNovDec2005
2006JanFebMarAprMayJunJulAugSepOctNovDec2006
2007JanFebMarAprMayJunJulAugSepOctNovDec2007
2008JanFebMarAprMayJunJulAugSepOctNovDec2008
2009JanFebMarAprMayJunJulAugSepOctNovDec2009
2010JanFebMarAprMayJunJulAugSepOctNovDec2010
2011JanFebMarAprMayJunJulAugSepOctNovDec2011
2012JanFebMarAprMayJunJulAugSepOctNovDec2012
2013JanFebMarAprMayJunJulAugSepOctNovDec2013
2014JanFebMarAprMayJunJulAugSepOctNovDec2014
2015JanFebMarAprMayJunJulAugSepOctNovDec2015
2016JanFebMarAprMayJunJulAugSepOctNovDec2016
2017JanFebMarAprMayJunJulAugSepOctNovDec2017
2018JanFebMarAprMayJunJulAugSepOctNovDec2018
2019JanFebMarAprMayJunJulAugSepOctNovDec2019
2020JanFebMarAprMay2020

Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Custom Search