Click here to Skip to main content
15,881,812 members
Home / Discussions / Hardware & Devices
   

Hardware & Devices

 
QuestionMotherboard for AMD Phenom II x4 955 Black Edition Pin
GiteHrudaya11-Dec-18 1:46
GiteHrudaya11-Dec-18 1:46 
AnswerRe: Motherboard for AMD Phenom II x4 955 Black Edition Pin
OriginalGriff11-Dec-18 1:56
mveOriginalGriff11-Dec-18 1:56 
QuestionAnyone here use a higher end SSD based on PCIe? Pin
charlieg25-Nov-18 1:41
charlieg25-Nov-18 1:41 
AnswerRe: Anyone here use a higher end SSD based on PCIe? Pin
charlieg9-Dec-18 12:53
charlieg9-Dec-18 12:53 
QuestionLocation analytics using cisco meraki api Pin
Member 1401942312-Nov-18 3:13
Member 1401942312-Nov-18 3:13 
QuestionEmulated Low Res display designer Pin
maze322-Oct-18 6:10
professionalmaze322-Oct-18 6:10 
QuestionNUC for a light shared development data server? Pin
maze33-Sep-18 0:28
professionalmaze33-Sep-18 0:28 
QuestionHuawei E3372 USB Dongle Pin
Hazel J Chua23-Aug-18 19:27
Hazel J Chua23-Aug-18 19:27 
QuestionSIM900 - connection issue Pin
MateoGlowinski1-Aug-18 21:30
professionalMateoGlowinski1-Aug-18 21:30 
QuestionSOLVED Raspberry Pi interrupt C/C++ - sample code / tutorial ? Pin
Vaclav_30-Jun-18 2:41
Vaclav_30-Jun-18 2:41 
QuestionIntel mini motherboards / MIDI IN .. Single Board Computer ? Pin
ApplesAreGood24-Apr-18 6:44
ApplesAreGood24-Apr-18 6:44 
AnswerRe: Intel mini motherboards / MIDI IN .. Single Board Computer ? Pin
Richard MacCutchan24-Apr-18 7:00
mveRichard MacCutchan24-Apr-18 7:00 
QuestionNeed help with internal timing constraint in FPGAs Pin
Member 137693108-Apr-18 21:33
Member 137693108-Apr-18 21:33 
I'm currently trying to implement an IP-Core on a Cyclone V 5CSEBA6U23I7 FPGA-HPS System using Altera Quartus II and TimeQuest Analyzer.

The Verilog code pasted below produces a timing problem, namely the assignment fifo_wdata_289[255:0] <= {fifo_out,fifo_wdata_289[255:16]};, which writes the output of one FIFO into another FIFO register array.

The FIFOs in use are asynchronous, but the signals used are on the same clock domain.
This is being placed on the chip with a clock skew of -2.255 ns, which is a little bit less than a whole period (288 MHz clock => 3.47 ns), and makes TimeQuest complain, that the constraints are being violated.

The recommendation of TimeQuest is to Reduce the levels of combinational logic for the path (Issue Long Combinational Path) with Extra levels of combinational logic = 1, which you could get a perfect reference here [^]Discussion on the influencing factors of clock in FPGA design[^].

The 288 MHz clock is generated via PLL and I'm using Timeconstraint files (sdc) with commands derive_pll_clocks and derive_clock_uncertainty.

My question now is how to solve this problem, since I only have one layer of combinational logic (Demuxer and routing, as suggested by the assignment) and thus have no idea how to reduce that. Is there any other way I can make sure the timing requirement is met, or is there a better way to program this statemachine?

case(stateProc)
     2'b00:
     begin
         if(~fifo_empty&~fifo_full_289)
         begin
             fifo_wdata_289[255:0] <= {fifo_out,fifo_wdata_289[255:16]};
             fifo_wdata_289[287:256] <= {2'b11,fifo_wdata_289[287:258]};
             if(imgSize >= maxImgSize - 32'd2)//image done, transmit data and fire irq
             begin
                 fifo_wdata_289[288] <= 1;
                 stateProc <= 2'b01;
                 imgSize <= 32'd0;
             end
             else if(fifo_wdata_289[258])//process transfer without irq //258 high means that 256 has been written in this cycle and 258 in the previous cycle
             begin
                 fifo_wdata_289[288] <= 0;
                 stateProc <= 2'b01;
                 imgSize <= imgSize + 32'd2;
             end
             else//accumulate more data
             begin
                 fifo_wdata_289[288] <= 0;
                 stateProc <= 2'b00;
                 imgSize <= imgSize + 32'd2;
             end
         end
         else
         begin
             fifo_wdata_289 <= fifo_wdata_289;
             imgSize <= imgSize;
             stateProc <= 2'b00;
         end
     end
     2'b01:
     begin
         fifo_wdata_289 <= fifo_wdata_289;
         imgSize <= imgSize;
         stateProc <= 2'b11;
     end
     2'b11:
     begin
         fifo_wdata_289 <= 0;
         imgSize <= imgSize;
         stateProc <= 2'b00;
     end
 endcase


The TimeQuest failing paths look mostly like this:
Slack:
-3.178

From Node:
soc_system:u0|CamConnector:camconnector_0|FIFO_289:FIFO_inst_289|dcfifo:dcfifo_component|dcfifo_6up1:auto_generated|wrptr_g[0]

To Node:
soc_system:u0|CamConnector:camconnector_0|fifo_wdata_289[267]

I'm currently using MLAB cells as FIFO storage, which are rated for 290 MHz.
Both FIFOs are asynchronous and have a synchronizaton setting of 3.
Timing closure Recommandations of TimeQuest reports the following two issues:

1. Unbalanced Combinational Logic
2. Long Combinational Path

Thanks for your help. Poke tongue | ;-P
GeneralModbus RTU with function code1 Pin
Member 105152258-Apr-18 21:08
professionalMember 105152258-Apr-18 21:08 
GeneralRe: Modbus RTU with function code1 Pin
Gerry Schmitz9-Apr-18 3:54
mveGerry Schmitz9-Apr-18 3:54 
QuestionRAM image of DVD? Pin
kalberts7-Apr-18 3:35
kalberts7-Apr-18 3:35 
AnswerRe: RAM image of DVD? Pin
Gerry Schmitz7-Apr-18 7:04
mveGerry Schmitz7-Apr-18 7:04 
GeneralRe: RAM image of DVD? Pin
kalberts8-Apr-18 21:26
kalberts8-Apr-18 21:26 
GeneralRe: RAM image of DVD? Pin
Gerry Schmitz9-Apr-18 2:05
mveGerry Schmitz9-Apr-18 2:05 
GeneralRe: RAM image of DVD? Pin
kalberts9-Apr-18 2:30
kalberts9-Apr-18 2:30 
GeneralRe: RAM image of DVD? Pin
Gerry Schmitz9-Apr-18 3:10
mveGerry Schmitz9-Apr-18 3:10 
AnswerRe: RAM image of DVD? Pin
Randor 11-Apr-18 15:21
professional Randor 11-Apr-18 15:21 
QuestionIs android or windows tablet any good for occasional coding? Pin
Kanter6665-Apr-18 22:57
professionalKanter6665-Apr-18 22:57 
AnswerRe: Is android or windows tablet any good for occasional coding? Pin
OriginalGriff5-Apr-18 23:07
mveOriginalGriff5-Apr-18 23:07 
AnswerRe: Is android or windows tablet any good for occasional coding? Pin
Gerry Schmitz6-Apr-18 7:52
mveGerry Schmitz6-Apr-18 7:52 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.