Presentation is loading. Please wait.

Presentation is loading. Please wait.

A2T: automatic abstraction from RTL to TLM IPs. 2 Outline HIFSuite overview Motivation for abstraction Abstraction techniques Tool features Tested benchmarks.

Similar presentations


Presentation on theme: "A2T: automatic abstraction from RTL to TLM IPs. 2 Outline HIFSuite overview Motivation for abstraction Abstraction techniques Tool features Tested benchmarks."— Presentation transcript:

1 A2T: automatic abstraction from RTL to TLM IPs

2 2 Outline HIFSuite overview Motivation for abstraction Abstraction techniques Tool features Tested benchmarks EDALab s.r.l. – Networked Embedded Systems

3 HIFSuite overview 3EDALab s.r.l. – Networked Embedded Systems

4 HIFSuite overview 4 A2T: RTL to TLM abstraction tool EDALab s.r.l. – Networked Embedded Systems

5 Why automatic abstraction? 5 IP core (RTL) CPU (Application + Drivers) Bus (TLM) MEM (TLM) TLM design Transactor RTL IP reuse IP core (RTL) EDALab s.r.l. – Networked Embedded Systems

6 Why automatic abstraction? 6 IP core (RTL) CPU (Application + Drivers) Bus (TLM) MEM (TLM) TLM design Transactor RTL IP reuse IP core (RTL) RTL simulation is slow is the transactor correct ? EDALab s.r.l. – Networked Embedded Systems

7 Why automatic abstraction? 7 IP core (RTL) CPU (Application + Drivers) Bus (TLM) MEM (TLM) TLM design IP core (TLM) RTL /IP abstraction Fast simulation Correct by construction OSCI TLM 2.0 compliant Untimed/Loosely Timed -) Quantum Keeper (QK) -) Delay Time (DT) DT=0 if Untimed Approximately Timed -) Delay Time (DT) -) 2-4 phases EDALab s.r.l. – Networked Embedded Systems

8 Abstraction steps 1.RTL HDL (i.e., VHDL, Verilog, SystemC) to RTL hardware intermediate format (HIF) –Front-end conversion tool 2.RTL HIF to TLM HIF –A2T: merge of states, clock abstraction 3.TLM HIF to SystemC TLM –Back-end conversion tool 8EDALab s.r.l. – Networked Embedded Systems

9 Issues: –Different HDL semantics 9 SystemC Verilog VHDL TLM 1. Front-end/Back-end conversion tool EDALab s.r.l. – Networked Embedded Systems

10 –HIF has a proper semantics HIF RTL (close to VHDL semantics) + HIF TLM Front-end tool maps any HDL-related construct into HIF constructs 10 SystemC Verilog VHDL HIF (TLM) HIF (RTL) 1. Front-end/Back end conversion tool (contd) EDALab s.r.l. – Networked Embedded Systems

11 Framework for conversion verification HIFSuite Regression Suite (HRS) – HRS consists of two environments: From VHDL or Verilog to VHDL or Verilog –Synopsys Formality equivalence checking From VHDL or Verilog to SystemC (and viceversa) –Dynamic simulation via Mentor Modelsim + EDALab ATPG (Ulisse) 11EDALab s.r.l. – Networked Embedded Systems

12 Formal Framework: UNIVER CM Unique formalism for heterogeneous components –Handle discrete and continuous behaviors –Supports hardware and software descriptions Non determinism versus determinism Allows elaboration of intermediate models for –Software generation –Efficient system simulation HIFSuite UNIVER CM Software SystemC SystemC AMS SystemC TLM Pure SW generation Efficient simulation p_count: process (clk) begin ContaByte <= '0’; if Step = ‘1 then ContaByte <= ‘1’; end if; end process; D E C B F A Entry S Exit α, T α β Off x>=24 dx/dt= -Kx On x<=25 dx/dt= K(h-x) x=24 x=25 12EDALab s.r.l. – Networked Embedded Systems

13 HIFSuite conversion tool limitations Supported HDL constructs: –Almost all VHDL, Verilog and SystemC synthesizable constructs supported Ongoing work for complete support Documentation available on current supported constructs –Synthesizable constructs used in a non-synthesizable way supported! (e.g., while (x>0)) –TLM constructs supported only by the back-end conversion tool they are generated in HIF during abstraction 13EDALab s.r.l. – Networked Embedded Systems

14 2. From RTL HIF to TLM HIF: A2T Tool features: –Merge of states and clock abstraction –RTL communication protocol abstraction –Cycle accurate to transaction accurate behavior abstraction –Data type abstraction –Correct-by-construction TLM IPs event-based equivalence –OSCI TLM-2.0 compliant interfaces –10x to 100x speedup depending on RTL IP structure and target TLM protocol 14EDALab s.r.l. – Networked Embedded Systems

15 2.1 Merge of states and clk abstraction 15 AB uf 0 ; clk & ef 0 uf 1 ; clk & ef 1 uf 2 ; clk & ~ef 1 A’ uf 0 ; while (~ ef 1 ) { uf 2 }; uf 1 ; ef 0 AB uf 0 ; clk & ef 0 uf 1 ; clk RTL A’ uf 0 ; uf 1 ; ef 0 TLM EDALab s.r.l. – Networked Embedded Systems

16 16 A B uf 2 ; clk & ~ef 1 C uf 0 ; if ( ef 1 ) { uf 1 ; // recursively, all the code representing the path of state B } else { uf 2 ; // recursively, all the code representing the path of state C }; ef 0 A’ uf 0 ; clk & ef 0 uf 1 ; clk & ef 1 RTL TLM 2.1 Merge of states and clk abstraction EDALab s.r.l. – Networked Embedded Systems

17 2.2 RTL comm. protocol abstraction 17 // write #1 port_data  data1; port_data_en  true; wait(); // write #2 port_data  data2; port_data_en  true; wait(); // write #2 result_en  port_result_en; while ( !result_en) wait(); result  port_result; … // write transaction payload.command  write; payload.data  data1; b_transport(payload, t); // write transaction payload.data  data2; b_transport(payload, t); // read transaction payload.command  read; b_transport(payload, t); result  payload.result; … RTLTLM EDALab s.r.l. – Networked Embedded Systems

18 2.3 CA to transaction accurate behavior 18 write_transaction ( read( data1 ) ) Cycle- accurate (CA): clk data_IN data_en_IN result_OUT result_en_OUT data1<= data_IN.read() data2<= data_IN.read() result_OUT.write() <=result write() read() write_transaction ( read( data2 ) ) read_transaction ( write( result ) ) end transaction start transaction Transaction- accurate (TA): EDALab s.r.l. – Networked Embedded Systems RTL-TLM event-based equivalence: Bombieri et al. [ACM/IEEE MEMOCODE 2006, 2007]; Bombieri et al. [IEEE Transactions on Computer, 2010]

19 2.4 Data type abstraction 19 IP core (RTL) RTL /IP abstraction IP core (TLM) HIF Suite Abstracted Data Types (HADT) Library (C++) HDL Data Types Library Data type abstraction HIFSuite HADT library: –Faster and more efficiente implementation –Logic and bit accurate types abstracted –Two versions: Multivalue logic abstracted into 2-values logic Multivalue logic mantained EDALab s.r.l. – Networked Embedded Systems

20 2.5 OSCI TLM-2.0 compliant interfaces Different TLM IP interfaces can be generated during abstraction –Functionality code separated from protocol code –TLM 2.0 interfaces currently available: Untimed/Loosely Timed –-) Quantum Keeper (QK)? –-) Delay Time (DT) » DT=0 if Untimed Approximately Timed –-) Delay Time (DT) –-) 2-4 phases Easily extendible 20EDALab s.r.l. – Networked Embedded Systems

21 2.6 Speedup: tested benchmarks Div, Dist, Root VHDL/SystemC-RTL –Face Recognition System by STMicroelectronics ECC, CRC VHDL/SystemC-RTL –VERTIGO project Platform by STMicroelectronics Bxx VHDL/Verilog –ITC-99 suite ADPCM SystemC-RTL –Opencore FFT VHDL –Magali Platform by CEA-Leti I2C VHDL –COMPLEX project platform by STMicroelectronics 21EDALab s.r.l. – Networked Embedded Systems

22 2.6 Speedup: times 22EDALab s.r.l. – Networked Embedded Systems

23 The tool 23EDALab s.r.l. – Networked Embedded Systems

24 24 Thank you for further information please contact us: hifsuite@edalab.it http://hifsuite.edalab.it EDALab s.r.l. – Networked Embedded Systems


Download ppt "A2T: automatic abstraction from RTL to TLM IPs. 2 Outline HIFSuite overview Motivation for abstraction Abstraction techniques Tool features Tested benchmarks."

Similar presentations


Ads by Google