OpenCores
URL https://opencores.org/ocsvn/socgen/socgen/trunk

Subversion Repositories socgen

[/] [socgen/] [trunk/] [Projects/] [opencores.org/] [io/] [ip/] [io_pic/] [rtl/] [xml/] [io_pic_def.xml] - Rev 135

Compare with Previous | Blame | View Log

<?xml version="1.0" encoding="UTF-8"?>
<!--
//                                                                        //
// Author : John Eaton  Ouabache Designworks                              //
//                                                                        //
//   Copyright (C) 2010 Authors and OPENCORES.ORG                         //
//                                                                        //
//   This source file may be used and distributed without                 //
//   restriction provided that this copyright statement is not            //
//   removed from the file and that any derivative work contains          //
//   the original copyright notice and the associated disclaimer.         //
//                                                                        //
//   This source file is free software; you can redistribute it           //
//   and/or modify it under the terms of the GNU Lesser General           //
//   Public License as published by the Free Software Foundation;         //
//   either version 2.1 of the License, or (at your option) any           //
//   later version.                                                       //
//                                                                        //
//   This source is distributed in the hope that it will be               //
//   useful, but WITHOUT ANY WARRANTY; without even the implied           //
//   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR              //
//   PURPOSE. See the GNU Lesser General Public License for more          //
//   details.                                                             //
//                                                                        //
//   You should have received a copy of the GNU Lesser General            //
//   Public License along with this source; if not, download it           //
//   from http://www.opencores.org/lgpl.shtml                             //
//                                                                        //
-->
<ipxact:component 
xmlns:ipxact="http://www.accellera.org/XMLSchema/IPXACT/1685-2014"
xmlns:socgen="http://opencores.org"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.accellera.org/XMLSchema/IPXACT/1685-2014
http://www.accellera.org/XMLSchema/IPXACT/1685-2014/index.xsd">

<ipxact:vendor>opencores.org</ipxact:vendor>
<ipxact:library>io</ipxact:library>
<ipxact:name>io_pic</ipxact:name>
<ipxact:version>def</ipxact:version>    



<ipxact:busInterfaces>

 <ipxact:busInterface><ipxact:name>slave_clk</ipxact:name>
  <ipxact:busType vendor="opencores.org" library="Busdefs" name="clock" version="def"/>
  <ipxact:abstractionTypes>
      <ipxact:abstractionType>
  <ipxact:abstractionRef vendor="opencores.org" library="Busdefs" name="clock" version="rtl"/>
    <ipxact:portMaps>
      <ipxact:portMap>
        <ipxact:logicalPort><ipxact:name>clk</ipxact:name></ipxact:logicalPort>
        <ipxact:physicalPort><ipxact:name>clk</ipxact:name></ipxact:physicalPort>
      </ipxact:portMap>
    </ipxact:portMaps>
        </ipxact:abstractionType>
      </ipxact:abstractionTypes>
   <ipxact:slave><ipxact:memoryMapRef ipxact:memoryMapRef="mb"/>  </ipxact:slave>
  </ipxact:busInterface>


 <ipxact:busInterface><ipxact:name>slave_reset</ipxact:name>
  <ipxact:busType vendor="opencores.org" library="Busdefs" name="reset" version="def"/>
 <ipxact:abstractionTypes>
      <ipxact:abstractionType>
  <ipxact:abstractionRef vendor="opencores.org" library="Busdefs" name="reset" version="rtl"/>
    <ipxact:portMaps>
      <ipxact:portMap>
        <ipxact:logicalPort><ipxact:name>reset</ipxact:name></ipxact:logicalPort>
        <ipxact:physicalPort><ipxact:name>reset</ipxact:name></ipxact:physicalPort>
      </ipxact:portMap>
    </ipxact:portMaps>
        </ipxact:abstractionType>
      </ipxact:abstractionTypes>
  <ipxact:slave/>
 </ipxact:busInterface>




<ipxact:busInterface><ipxact:name>mb</ipxact:name>
   <ipxact:busType vendor="opencores.org" library="Busdefs" name="micro_bus" version="def"/>
  <ipxact:abstractionTypes>
      <ipxact:abstractionType>
   <ipxact:abstractionRef vendor="opencores.org" library="Busdefs" name="micro_bus" version="rtl"/>
     <ipxact:portMaps>
        <ipxact:portMap>
         <ipxact:logicalPort><ipxact:name>rdata</ipxact:name>
         </ipxact:logicalPort>
         <ipxact:physicalPort><ipxact:name>rdata</ipxact:name>
           <ipxact:wire><ipxact:vectors><ipxact:vector><ipxact:left>7</ipxact:left><ipxact:right>0</ipxact:right></ipxact:vector></ipxact:vectors></ipxact:wire>
         </ipxact:physicalPort>
       </ipxact:portMap>


        <ipxact:portMap>
         <ipxact:logicalPort><ipxact:name>wdata</ipxact:name>
         </ipxact:logicalPort>
         <ipxact:physicalPort><ipxact:name>wdata</ipxact:name>
           <ipxact:wire><ipxact:vectors><ipxact:vector><ipxact:left>7</ipxact:left><ipxact:right>0</ipxact:right></ipxact:vector></ipxact:vectors></ipxact:wire>
         </ipxact:physicalPort>
       </ipxact:portMap>


        <ipxact:portMap>
         <ipxact:logicalPort><ipxact:name>addr</ipxact:name>
         </ipxact:logicalPort>
         <ipxact:physicalPort><ipxact:name>addr</ipxact:name>
           <ipxact:wire><ipxact:vectors><ipxact:vector><ipxact:left>3</ipxact:left><ipxact:right>0</ipxact:right></ipxact:vector></ipxact:vectors></ipxact:wire>
         </ipxact:physicalPort>
       </ipxact:portMap>


        <ipxact:portMap>
         <ipxact:logicalPort><ipxact:name>rd</ipxact:name>
         </ipxact:logicalPort>
         <ipxact:physicalPort><ipxact:name>rd</ipxact:name>
         </ipxact:physicalPort>
       </ipxact:portMap>

        <ipxact:portMap>
         <ipxact:logicalPort><ipxact:name>wr</ipxact:name>
         </ipxact:logicalPort>
         <ipxact:physicalPort><ipxact:name>wr</ipxact:name>
         </ipxact:physicalPort>
       </ipxact:portMap>

        <ipxact:portMap>
         <ipxact:logicalPort><ipxact:name>cs</ipxact:name>
         </ipxact:logicalPort>
         <ipxact:physicalPort><ipxact:name>cs</ipxact:name>
         </ipxact:physicalPort>
       </ipxact:portMap>


      </ipxact:portMaps>
        </ipxact:abstractionType>
      </ipxact:abstractionTypes>
   <ipxact:endianness>little</ipxact:endianness>
   <ipxact:bitsInLau>8</ipxact:bitsInLau>
     <ipxact:slave><ipxact:memoryMapRef ipxact:memoryMapRef="mb"/>  </ipxact:slave>
  </ipxact:busInterface>




</ipxact:busInterfaces>



<ipxact:componentGenerators>






<ipxact:componentGenerator>
  <ipxact:name>gen_registers</ipxact:name>
  <ipxact:phase>102.1</ipxact:phase>
  <ipxact:vendorExtensions><socgen:envIdentifier>:*common:*</socgen:envIdentifier></ipxact:vendorExtensions>
  <ipxact:apiType>none</ipxact:apiType>
  <ipxact:generatorExe>tools/regtool/gen_registers</ipxact:generatorExe>
    <ipxact:parameters>
    <ipxact:parameter> 
      <ipxact:name>bus_intf</ipxact:name>
      <ipxact:value>mb</ipxact:value>
    </ipxact:parameter>
    <ipxact:parameter> 
      <ipxact:name>dest_dir</ipxact:name>
      <ipxact:value>../verilog</ipxact:value>
    </ipxact:parameter>
  </ipxact:parameters>    
</ipxact:componentGenerator>

<ipxact:componentGenerator>
  <ipxact:name>gen_verilog</ipxact:name>
  <ipxact:phase>104.0</ipxact:phase>
  <ipxact:apiType>none</ipxact:apiType>
  <ipxact:vendorExtensions><socgen:envIdentifier>:*common:*</socgen:envIdentifier></ipxact:vendorExtensions>
  <ipxact:generatorExe>tools/verilog/gen_verilog</ipxact:generatorExe> 
  <ipxact:parameters>
    <ipxact:parameter> 
      <ipxact:name>destination</ipxact:name>
      <ipxact:value>io_pic_def</ipxact:value>
    </ipxact:parameter>
  </ipxact:parameters>
</ipxact:componentGenerator>


</ipxact:componentGenerators>

  <ipxact:fileSets>

    <ipxact:fileSet>
      <ipxact:name>fs-common</ipxact:name>

      <ipxact:file>
        <ipxact:logicalName></ipxact:logicalName>
        <ipxact:name>../verilog/top.body</ipxact:name>
        <ipxact:fileType>verilogSource</ipxact:fileType><ipxact:userFileType>fragment</ipxact:userFileType>
      </ipxact:file>

    </ipxact:fileSet>

    <ipxact:fileSet>
      <ipxact:name>fs-sim</ipxact:name>
      <ipxact:file>
        <ipxact:logicalName></ipxact:logicalName>
        <ipxact:name>../verilog/copyright.v</ipxact:name>
        <ipxact:fileType>verilogSource</ipxact:fileType><ipxact:userFileType>include</ipxact:userFileType>
      </ipxact:file>

      <ipxact:file>
        <ipxact:logicalName></ipxact:logicalName>
        <ipxact:name>../verilog/common/io_pic_def</ipxact:name>
        <ipxact:fileType>verilogSource</ipxact:fileType><ipxact:userFileType>module</ipxact:userFileType>
      </ipxact:file>

      <ipxact:file>
        <ipxact:logicalName>mb</ipxact:logicalName>
        <ipxact:name>../verilog/io_pic_def_mb</ipxact:name>
        <ipxact:fileType>verilogSource</ipxact:fileType><ipxact:userFileType>module</ipxact:userFileType>
      </ipxact:file>



    </ipxact:fileSet>



  </ipxact:fileSets>





<ipxact:model>    
       <ipxact:views>


              <ipxact:view>
              <ipxact:name>verilog</ipxact:name>              
              <ipxact:vendorExtensions>
              <ipxact:componentRef ipxact:vendor="opencores.org" 
                                   ipxact:library="Testbench" 
                                   ipxact:name="toolflow" 
                                   ipxact:version="verilog"/> 
              </ipxact:vendorExtensions>
              </ipxact:view>





              <ipxact:view>
              <ipxact:name>common</ipxact:name><ipxact:envIdentifier>:*common:*</ipxact:envIdentifier>
              
              <ipxact:language>Verilog</ipxact:language>
              <ipxact:modelName></ipxact:modelName>
                     <ipxact:fileSetRef>
                            <ipxact:localName>fs-common</ipxact:localName>
                     </ipxact:fileSetRef>
              </ipxact:view>

              <ipxact:view>
              <ipxact:name>sim</ipxact:name><ipxact:envIdentifier>:*Simulation:*</ipxact:envIdentifier>
              
              <ipxact:language>Verilog</ipxact:language>
              <ipxact:modelName></ipxact:modelName>
                     <ipxact:fileSetRef>
                            <ipxact:localName>fs-sim</ipxact:localName>
                     </ipxact:fileSetRef>
              </ipxact:view>

              <ipxact:view>
              <ipxact:name>syn</ipxact:name><ipxact:envIdentifier>:*Synthesis:*</ipxact:envIdentifier>
              
              <ipxact:language>Verilog</ipxact:language>
              <ipxact:modelName></ipxact:modelName>
                     <ipxact:fileSetRef>
                            <ipxact:localName>fs-sim</ipxact:localName>
                     </ipxact:fileSetRef>
              </ipxact:view>


              <ipxact:view>
              <ipxact:name>doc</ipxact:name>
              <ipxact:vendorExtensions>
              <ipxact:componentRef ipxact:vendor="opencores.org" 
                                   ipxact:library="Testbench" 
                                   ipxact:name="toolflow" 
                                   ipxact:version="documentation"/> 
              </ipxact:vendorExtensions>
              <ipxact:envIdentifier>:*Documentation:*</ipxact:envIdentifier>
              <ipxact:language>Verilog</ipxact:language>
              </ipxact:view>



      </ipxact:views>



<ipxact:ports>

<ipxact:port><ipxact:name>enable</ipxact:name>
<ipxact:wire><ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:direction>in</ipxact:direction></ipxact:wire>
</ipxact:port>

  
<ipxact:port><ipxact:name>clk</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>in</ipxact:direction></ipxact:wire>
</ipxact:port>


<ipxact:port><ipxact:name>reset</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>in</ipxact:direction></ipxact:wire>
</ipxact:port>


<ipxact:port><ipxact:name>cs</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>in</ipxact:direction></ipxact:wire>
</ipxact:port>


<ipxact:port><ipxact:name>rd</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>in</ipxact:direction></ipxact:wire>
</ipxact:port>

<ipxact:port><ipxact:name>wr</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>in</ipxact:direction></ipxact:wire>
</ipxact:port>


<ipxact:port><ipxact:name>addr</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>in</ipxact:direction>
<ipxact:vectors><ipxact:vector><ipxact:left>3</ipxact:left><ipxact:right>0</ipxact:right></ipxact:vector></ipxact:vectors></ipxact:wire>
</ipxact:port>


<ipxact:port><ipxact:name>wdata</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>in</ipxact:direction>
<ipxact:vectors><ipxact:vector><ipxact:left>7</ipxact:left><ipxact:right>0</ipxact:right></ipxact:vector></ipxact:vectors></ipxact:wire>
</ipxact:port>


<ipxact:port><ipxact:name>rdata</ipxact:name>
<ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:wire><ipxact:direction>out</ipxact:direction>
<ipxact:vectors><ipxact:vector><ipxact:left>7</ipxact:left><ipxact:right>0</ipxact:right></ipxact:vector></ipxact:vectors></ipxact:wire>
</ipxact:port>





<ipxact:port><ipxact:name>irq_out</ipxact:name>
<ipxact:wire><ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>reg</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:direction>out</ipxact:direction></ipxact:wire>
</ipxact:port>

<ipxact:port><ipxact:name>nmi_out</ipxact:name>
<ipxact:wire><ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>reg</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:direction>out</ipxact:direction></ipxact:wire>
</ipxact:port>

<ipxact:port><ipxact:name>int_in</ipxact:name>
<ipxact:wire><ipxact:wireTypeDefs><ipxact:wireTypeDef><ipxact:typeName>wire</ipxact:typeName></ipxact:wireTypeDef></ipxact:wireTypeDefs>
<ipxact:direction>in</ipxact:direction>
<ipxact:vectors><ipxact:vector><ipxact:left>7</ipxact:left><ipxact:right>0</ipxact:right></ipxact:vector></ipxact:vectors></ipxact:wire>
</ipxact:port>

</ipxact:ports>

</ipxact:model>    









<ipxact:memoryMaps>
<ipxact:memoryMap>

<ipxact:name>mb</ipxact:name>
<ipxact:addressUnitBits>8</ipxact:addressUnitBits>
<ipxact:bank>
 <ipxact:name>mb</ipxact:name>
 <ipxact:baseAddress>0x00</ipxact:baseAddress>
 
  <ipxact:addressBlock>
  <ipxact:name>mb_microbus</ipxact:name>
  <ipxact:range>0x10</ipxact:range>
  <ipxact:width>8</ipxact:width>


 <ipxact:register>
   <ipxact:name>int_in</ipxact:name>
   <ipxact:addressOffset>0x0</ipxact:addressOffset>
   <ipxact:size>8</ipxact:size>
   <ipxact:access>read-only</ipxact:access>
  </ipxact:register>

 <ipxact:register>
   <ipxact:name>irq_enable</ipxact:name>
   <ipxact:addressOffset>0x2</ipxact:addressOffset>
   <ipxact:size>8</ipxact:size>
   <ipxact:access>read-write</ipxact:access>
  </ipxact:register>

 <ipxact:register>
   <ipxact:name>nmi_enable</ipxact:name>
   <ipxact:addressOffset>0x4</ipxact:addressOffset>
   <ipxact:size>8</ipxact:size>
   <ipxact:access>read-write</ipxact:access>
  </ipxact:register>


 <ipxact:register>
   <ipxact:name>irq_act</ipxact:name>
   <ipxact:addressOffset>0x6</ipxact:addressOffset>
   <ipxact:size>8</ipxact:size>
   <ipxact:access>read-only</ipxact:access>
  </ipxact:register>

 <ipxact:register>
   <ipxact:name>nmi_act</ipxact:name>
   <ipxact:addressOffset>0x8</ipxact:addressOffset>
   <ipxact:size>8</ipxact:size>
   <ipxact:access>read-only</ipxact:access>
  </ipxact:register>



  </ipxact:addressBlock>


</ipxact:bank>

</ipxact:memoryMap></ipxact:memoryMaps>








</ipxact:component>

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.