Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Difference between RTL and behavioral code

Status
Not open for further replies.

vlsi_fanatic

Junior Member level 1
Joined
Aug 14, 2004
Messages
17
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
174
HI,

what is the difference between RTL and behavioral code? are there any tools to convert behavioral code to RTL code?
 

rtl behavioral

Behavioural and RTL...
Hmmm.. I think it depends on the perception of the designers...

These days any synthesisable code is said as RTL Code.

And code that can only be simulated is behavioral code..
but some people say code which is implemented in a behvioral fashion without thinking of the actual circuit formed while synthesis, as behavioral code..

eg: using for loop.
 

rtl vs behavioral

I agree with whizkid.

However, digital designers usually use the term behavioural model for non-synthesizable models (faster to simulate and easy to debug) and the term RTL for the synthesizable models (although it might not be a pure RTL).
 

rtl code vs behavioral code

both depends on how the programmers perceive it.. Almost all synthesisable codes are RTL.. in behavioral modelling (in VHDL) we have a whloe lot of conditional statements that go into the design.. RTL in its purest form will have connections between different basic elements...
 
difference between behavioral code & rtl code

RTL - going by defintion is a coding style which explains logic between 2 registers or register and input/output port . When not coded in this way it used to be know as behavioral coding style as most synthesis tool then could not synthesise unless you followed RTL way of coding . But many synthesis tools are able to recongize logic even when code is not in RTL .
for ex.-
for (i = 0 ; i < 7; i = i + 1)
{
a = b [ i + 1] ;
@clock;
}
Although this is behavioral code get2chip tool of cadence is still able to convert this code to h/w .

But now a days behavioral code is usally ment to describe code which designer is not intreseted in converting to h/w . For example a code to immitate memoy blocks . This need not synthesised persay but used only to model the delays associated with the memory block . Hope this answers your question.
 

rtl and behavioural of multiplier

In RTL design a circuit is described as a set of registers and a set of transfer functions describing the flow of data between the registers. In complex design,
this is main for hardware designer using synthesis

While coding in Behaviour the hardware designer is not much worried about synthesis, but only target is simulation..
 

difference between behavioural and rtl

does "Ambit Buildgates" tool have the capability of understanding the behavioral level code and convert it to H/W?
 

coding rtl vs model

hi
RTL coding is describing the system in terms of expressions,clocks and registers,mannually binding operation to specific clocl periods.So everything is about how data tranfer takes place between registers WRT clocks.
Behavioral coding describe the design in algorithmic way that is the functionality is defined by which operation must occur not by how they are implemented in hardware.
 

rtl vs behavior

I agree with Smith_kang
Behavioural description is a programming the design using algos like in C
just it shows how the design works
where as RTL is the description of the function at block level where each block may be synthesizable
for example take a shift and add multiplier
in behavioural description it just shows how multipilcation is done using shifting operation like programming in C
where as in RTL it describes the registers, shifting operation in registers, control unit and so on..
 

rtl versus behavioral

Basically, RTL design u need to think 'hardware' (what kind of block is required in ur design n register to register design)....

As for behavioural, u need to think and code as a flowchart of ur design.
 

difference between behavioural and rtl modelling

RTL is register transfer level,it bases on fsm control and data transfer.
behavioural is modeling of hardware of higher level than RTL.
 

architecture rtl behavioral

RTL codes is synthesisable while Behavior is not. However if your purpose is to simulate what you design, behavior is better.
 

rtl and behavioral

RTL coding is structurer, we code base on the hardware arhictecture.
Behavioral coding is for simulation, to make sure the algorithm or functionality of the system work, without concerning the actual hardware architecture.
 

behavioral vs. rtl

Broadly it can be said that RTL coding if for Syntheise and Behaviourial code is more for Wriiting testbenches, test code etc but each has its own significance and importance
 

Re: RTL Vs Behavioral

RTL codes is synthesisable code and descripts any hardware.
Behavioral modeling is for simulation only.
 

Re: RTL Vs Behavioral

Hey all...
i agree with most of u....

RTL--- Synthesizable......and defines...architecture of the SOC.... and can not have capability to

Behavioral --- non-synthesizable............and using this one can simulate the functionality of the SOC...before it gets....streamed out.....and Non-synthesizable
 

Re: RTL Vs Behavioral

Behavioural code: used to check the
functionality of the design.Mostly Cannot be synthesized.

RTL: it is jargon in design for the mixture of behavioural(part which can be synthesized) and dataflow modeling.


say we are implementing a multiplier.
then behavioural code will be


//behavioural
module Multiplication(i,o,i1);
input [3:0] i,i1;
output [7:0] o;
reg [7:0] o;

always @(i or i1)
o=multi(i,i1);

function [7:0] multi;
input [3:0] I,I1;
integer l;
reg C;
begin
{C,multi}=I*I1;
end
end
endfunction
endmodule







//rtl implementation



function [7:0] multi;
input [3:0] I,I1;
integer l;
reg C;
begin
multi=0;
for(l=0;l<4;l=l+1)
begin
if(I1[l]==1'b1)
{C,multi[7:4]}=multi[7:4]+I;
multi=multi>>1;
multi[7]=C;
C=1'b0;
end
end
endfunction
endmodule


In the former we realized the multiplier abstractly we but didnt mention how , in the latter
we showcased that it is through shift and add,
which can be implemented, as is the case with
today's processors where the multiplier unit is
hardwired or comes with math coprocessor.
 

Re: RTL Vs Behavioral

hi all,

I agree with Wizkid, that the meaning of the terms RTL & Behavioral depends on the perception of the designers. Here we use the term System-Level Modeling to describe non-sysnthesizable code that is just used for simulations. RTL for sysnthesizable code.

We use the term Behavioral Model to describe high level description of a circuit that can be used to generate RTL model. The coding style and statements used to describe a Behavioral model are very resctricted. While compiling Behavioral code, user can control the clock cycle constraints by varying the number of pipeline stages. This allows user to quickly explore the design space by changing clock cycle constraints. The output of Behavioral Compiler will be an RTL code.
 

Re: RTL Vs Behavioral

Hi, all,

is there any book or website regarding behavioral modelling available?

TNX in advances.

Gerade
 

RTL Vs Behavioral

Now, some tools may translate the C language to the RTL, Such as mentor graphicas
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top