Using IP-XACT Metadata for a TLM modeling Flow

571 views
417 views

Published on

By Jack Donovan, Edwin Dankert (Duolog Technologies)

Many design organizations are evolving their methodologies to a Metadata driven methodology and making huge gains in designer productivity because of increased and coherent communications among all the SoC design disciplines (RTL design, Functional Verification, Software Development, TLM modeling, ....). A methodology where the design data common to the different flows of the SoC design process are stored centrally, many times using IP-XACT. A Metadata driven methodology allows automatic generation of net lists and design IP skeletons from a central database that contains registers, ports, interfaces, and other common design data. IP-XACT is commonly used to store the Metadata but does not directly store the TLM specific information without the use of non-standard vendor extensions. The proposed 2014 release of IP-XACT will resolve the current issues with TLM. This paper proposes a TLM solution based on the current version of IP-XACT (IEEE-1685 2009) and explains how TLM is proposed to be handled for the upcoming update to the IP-XACT standard (IEEE-1685 2014).

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
571
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Using IP-XACT Metadata for a TLM modeling Flow

  1. 1. Using IP-XACT Metadata for a TLM Modeling Flow Jack Donovan, Duolog Technologies Edwin Dankert, Duolog Technologies
  2. 2. Outline • • • • • Executable Live Specification Socrates and the SystemC Application IP-XACT Background SystemC Background Solution
  3. 3. Executable Live Specification Centralized Metadata for: • Automatic Design and Verification View Generation • Complete Design Status Cockpit • Workflows
  4. 4. Socrates Modular Platform for Creation and Deployment of IP Applications IP IP Application IP Application IP Application IP Application SystemC Application Application Applications Socrates • • • • • Modular Standardized Consistent Efficient High-Quality
  5. 5. IP-XACT Background (1 of 2)
  6. 6. IP-XACT Background (2 of 2)
  7. 7. SystemC Background - ports sc_port<my_if<my_dtype<param> > , MAX_BIND , CONN_POLICY > p_nm; sc_export<my_if<my_dtype<param> > > xp_nm; EXAMPLES: sc_port< sc_signal_in_if<sc_lv<8> > > p_signal8; sc_port< sc_fifo_in_if<sc_uint<16> >, 1, SC_ALL_BOUND > p_fifo16; sc_export<sc_signal_in_if<sc_lv<8> > > xp_signal8; sc_export<trans_if<trans > > xp_trans;
  8. 8. SystemC Background - TLM sockets tlm_initiator_socket< BUSWIDTH , PROTO_TYPE , MAX_BIND , CONN_POLICY> init_sock_nm; tlm_target_socket < BUSWIDTH , PROTO_TYPE , MAX_BIND , CONN_POLICY> target_sock_nm; EXAMPLES: tlm_initiator_socket< > example_init_socket; tlm_target_socket< 64, , 1, SC_ALL_BOUND> init_sock;
  9. 9. IP-XACT Solution Examples sc_port<my_if , max_bind , > my_port_name; sc_port<sc_signal_in_if<sc_fixed<2, 3, 4, 5, 6> > > PortName2; tlm_target_socket< 16 > PortName2;
  10. 10. IP-XACT Solution – sc_port (1 of 3) <port>  <name>my_port_name</name>  <transactional>   <transTypeDef>    <typeName>sc_port</typeName>    <typeDefinition               >sc_port.h</typeDefinition>   </transTypeDef>   <service>    <initiative>provides</initiative>    <serviceTypeDefs>     <serviceTypeDef>      <typeName>my_if</typeName>     </serviceTypeDef>    </serviceTypeDefs>   </service>   <maxConnections         >max_bind</maxConnections>  </transactional> </port>
  11. 11. IP-XACT Solution Examples sc_port<my_if , max_bind , > my_port_name; sc_port<sc_signal_in_if<sc_fixed<2, 3, 4, 5, 6> > > PortName2; tlm_target_socket< 16 > PortName2;
  12. 12. IP-XACT Solution – sc_port (2 of 3) <port>  <name>PortName2</name>  <transactional>   <transTypeDef>    <typeName>sc_port</typeName>      <typeDefinition         >sc_port.h</typeDefinition>   </transTypeDef>   <service>       <initiative>provides</initiative>    <serviceTypeDefs>     <serviceTypeDef>     <typeName          >sc_signal_in_if</typeName>     <parameters>       <parameter>        <name>sc_fixed</name>        <value>W, I, Q, O, N ???</value>       </parameter>      </parameters>     </serviceTypeDef>    </serviceTypeDefs>   </service>  </transactional> </port> <port>  <name>PortName2</name>  <transactional>     ...   <service>    <initiative>provides</initiative>    <serviceTypeDefs>     <serviceTypeDef>       <typeName>sc_signal_in_if</typeName>      <parameters>       <parameter>        <name>sc_fixed</name>        <value/> <!-- empty for ves -->        <vendorExtensions>          <parameters>            <parameter>             <name>W</name>             <value>2</value>                   ...             <parameters/>            <parameter>          </parameters> </vendorExtensions>       </parameter>      </parameters>     </serviceTypeDef>    </serviceTypeDefs>   </service>  </transactional </port>
  13. 13. IP-XACT Solution Examples sc_port<my_if , max_bind , > my_port_name; sc_port<sc_signal_in_if<sc_fixed<2, 3, 4, 5, 6> > > PortName2; tlm_target_socket< 16 > PortName2;
  14. 14. IP-XACT Solution – TLM socket (3 of 3) <port>  <name>PortName2</name>  <transactional>     ...   <service>    <initiative>provides</initiative>    <serviceTypeDefs>     <serviceTypeDef>        ...     </serviceTypeDef>    </serviceTypeDefs>    <vendorExtensions>     <socketType>export</socketType>     <width>16</width>     <protocol>      <type>tlm</type>      <payload>       <type>generic</type>       <extension mandatory="false"                 >generic</extension>      </payload>     </protocol> </vendorExtensions>   </service>  </transactional> </port>
  15. 15. Socrates Modular Platform for Creation and Deployment of IP Applications IP IP Application IP Application IP Application IP Application SystemC Application Application Applications Socrates • • • • • Modular Standardized Consistent Efficient High-Quality
  16. 16. SystemC Generators Leaf Cell Generator Leaf.h Leaf.cpp IP-XACT Metadata Interconnect Generator top.h
  17. 17. Summary • IP-XACT 1685 2009 can easily support interconnect and leaf cell generation for - Simple port and socket data types - IP-XACT intended for RTL - Port data types only templated by width - tlm sockets with default template types - Additional templated features can be implemented via IP-XACT vendor extensions - Need to modify a few of the interconnect rules

×