Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
17251 토론

"Force Use of Synchronous Clear Signals" assignment

LMelo2
초급자
1,479 조회수

Good morning. I need to force the position of a particular register on DDIOOUTCELL. The "Location -> DDIOOUTCELL_X34_Y18_N4" assignment works correctly. Also I need to use the SCLR, SLOAD and SDATA pins of that particular register. With the "Force Use of Synchronous Clear Signals" assignment I am able to reset the register, but I cannot find any assignment to force the synchronous LOAD. Can you help me?

regards, Luca

0 포인트
1 솔루션
sstrell
명예로운 기여자 III
1,462 조회수

sload is used to set a value from a separate sdata input.  You're just setting the output to 1 when this signal is enabled, which is not the intended behavior.  If the device doesn't support this configuration (which seems to be the case) extra logic is added to give you the behavior you've defined.

Maybe what you really want is an asynchronous preset, which would set the output to 1 whenever enabled.

You should check the Design Recommendations user guide to see how to code for what you want:

https://www.intel.com/content/www/us/en/support/programmable/support-resources/design-software/user-guides.html

원본 게시물의 솔루션 보기

0 포인트
5 응답
sstrell
명예로운 기여자 III
1,471 조회수

How are you coding this?  It would be based on that.

0 포인트
LMelo2
초급자
1,463 조회수
here is an example:
I create in vhdl the model of the FF I need:

DFF:process(clk_10M_int)is
begin

if rising_edge(clk_10M_int)then
if(sclr='1')then
Qdata<='0';
elsif(sload='1')then
Qdata<='1';
else
Qdata<=Ddata;
end if;
end if;

end process DFF;

then I fix the register position on a register (one of 2) outgoing DDRs with the following line in 
the .qsf file:
set_location_assignment DDIOOUTCELL_X34_Y10_N11 -to Qdata~reg0
At this point Quartus creates the circuit of the 1st photo:
DFF.png


then I always add this line in the .qsf file: 
set_instance_assignment -name FORCE_SYNCH_CLEAR ON -to Qdata ~ reg0
 
Now Quartus creates this circuit:
DFF2.png


 
So I can activate the synchronous reset of that register, 
but I don't know how to activate the synchronous load
 
 
Basically, Quartus uses combinatorial logic to create the "sync_load" function, as seen in this photo:
3.png
0 포인트
sstrell
명예로운 기여자 III
1,463 조회수

sload is used to set a value from a separate sdata input.  You're just setting the output to 1 when this signal is enabled, which is not the intended behavior.  If the device doesn't support this configuration (which seems to be the case) extra logic is added to give you the behavior you've defined.

Maybe what you really want is an asynchronous preset, which would set the output to 1 whenever enabled.

You should check the Design Recommendations user guide to see how to code for what you want:

https://www.intel.com/content/www/us/en/support/programmable/support-resources/design-software/user-guides.html

0 포인트
LMelo2
초급자
1,456 조회수
thank you very much for your time
0 포인트
RichardTanSY_Altera
1,438 조회수

I’m glad that your question has been addressed. With that, I will now transition this thread to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.


Best Regards,

Richard Tan


p/s: If any answer from the community or Intel Support are helpful, please feel free to give best answer or rate 9/10 survey.


0 포인트
응답