Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Reset Logic Function

Reply
Thread Tools

Reset Logic Function

 
 
We Ech Dee Ell
Guest
Posts: n/a
 
      10-08-2010
Hi All,

I have some code that consistently gives the problem of "Reset Logic
Function", "Multiple Resets" etc. with some design checking tool for
synthesis.


The code is:
------------------


write_enable : PROCESS (Clock)
BEGIN
IF (Clock'EVENT) AND (Clock = '1') THEN
IF ( Reset = '1' ) THEN
register_we_REG1_i1 <= '0';
Wack <= '0';
ELSIF (WStrobe = '1') THEN
register_we_REG1_i1 <= register_select(0);
Wack <= '1';
END IF;
END IF;
END PROCESS write_enable;

----------------------------------------------------------------
reg_REG1_field16_i1 : PROCESS (Clock)
BEGIN
IF (Clock'EVENT) AND (Clock = '1') THEN
IF Reset = '1' THEN
field16_i1 <= '1';
ELSIF ( register_we_REG1_i1 = '1' ) THEN
field16_i1 <= Wdata(16);
END IF;
END IF;
END PROCESS reg_REG1_field16_i1;


Can someone please help?
Change is sensitivity lists is not allowed. Only synchronous processes
are allowed.


Thanks a lot in advance!
 
Reply With Quote
 
 
 
 
backhus
Guest
Posts: n/a
 
      10-11-2010
On 8 Okt., 10:53, We Ech Dee Ell <(E-Mail Removed)> wrote:
> Hi All,
>
> I have some code that consistently gives the problem of "Reset Logic
> Function", "Multiple Resets" etc. with some design checking tool for
> synthesis.
>
> The code is:
> ------------------
>
> *write_enable : PROCESS (Clock)
> * BEGIN
> * * IF (Clock'EVENT) AND (Clock = '1') THEN
> * * * IF ( Reset = '1' ) THEN
> * * * * * register_we_REG1_i1 <= '0';
> * * * * * Wack <= '0';
> * * * ELSIF (WStrobe = '1') THEN
> * * * * * register_we_REG1_i1 <= register_select(0);
> * * * * * Wack <= '1';
> * * * END IF;
> * * END IF;
> * END PROCESS write_enable;
>
> *----------------------------------------------------------------
> * reg_REG1_field16_i1 : PROCESS (Clock)
> * BEGIN
> * * IF (Clock'EVENT) AND (Clock = '1') THEN
> * * * IF Reset = '1' THEN
> * * * * field16_i1 <= '1';
> * * * ELSIF ( register_we_REG1_i1 = '1' ) THEN
> * * * * field16_i1 <= Wdata(16);
> * * * END IF;
> * * END IF;
> * END PROCESS reg_REG1_field16_i1;
>
> Can someone please help?
> Change is sensitivity lists is not allowed. Only synchronous processes
> are allowed.
>
> Thanks a lot in advance!


Hi,
the code shows some nice examples for FFs with sync. Reset and Clock
Enable functions.
Only thing that looks strange to me is the Wack signal, that never
returns to '0', unless the FF gets resetted.
Once written to the FF, the write acknowledge never becomes inactive?
If not really intended an else branch could fix this.

So, what about the mentioned reset problem?
What messages do you see, printed by what kind of tool?
I can't see a connection between your code fragments and the very
common prased problems.

Have a nice synthesis
Eilert
 
Reply With Quote
 
 
 
Reply

Thread Tools

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 Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Reset Logic Function We Ech Dee Ell VHDL 0 10-08-2010 10:00 AM
Reset Logic Function We Ech Dee Ell VHDL 0 10-08-2010 08:51 AM
Python Logic Map/Logic Flow Chart. (Example Provided) spike Python 8 02-09-2010 12:31 PM
Asynchronous Logic Gates and Analog Logic Gates Jyoti Ballabh Software 3 11-26-2009 06:48 PM
CISCO 7XX / 761 password reset or reset to factory defaults Philipp Flesch Cisco 3 06-18-2006 07:47 PM



Advertisments