URL
https://opencores.org/ocsvn/socgen/socgen/trunk
Subversion Repositories socgen
[/] [socgen/] [trunk/] [Projects/] [opencores.org/] [logic/] [ip/] [uart/] [rtl/] [xml/] [uart_rxtx.design.xml] - Rev 133
Go to most recent revision | 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 //
// //
-->
<spirit:design
xmlns:spirit="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1685-2009"
xmlns:socgen="http://opencores.org"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1685-2009
http://www.spiritconsortium.org/XMLSchema/SPIRIT/1685-2009/index.xsd">
<spirit:vendor>opencores.org</spirit:vendor>
<spirit:library>logic</spirit:library>
<spirit:name>uart</spirit:name>
<spirit:version>rxtx.design</spirit:version>
<spirit:vendorExtensions><socgen:nodes>
<socgen:node><spirit:name>baud_clk</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>baud_clk_div</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>fifo_data_out</spirit:name>
<spirit:typeName>wire</spirit:typeName>
<spirit:wire>
<spirit:vector><spirit:left>7</spirit:left><spirit:right>0</spirit:right></spirit:vector></spirit:wire>
</socgen:node>
<socgen:node><spirit:name>fifo_full</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>fifo_empty</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>fifo_over_run</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>fifo_under_run</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>cde_buffer_empty</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>xmit_start</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>xmit_enable</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>txd_break_n</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>fifo_pop</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>rxd_pad_synced</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
</socgen:nodes></spirit:vendorExtensions>
<spirit:adHocConnections>
<spirit:adHocConnection>
<spirit:name>clk</spirit:name>
<spirit:externalPortReference spirit:portRef="slave_clk_clk"/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="clk"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="clk"/>
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="clk"/>
<spirit:internalPortReference spirit:componentRef="x_divider" spirit:portRef="clk"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="clk"/>
<spirit:internalPortReference spirit:componentRef="filter" spirit:portRef="clk"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>reset</spirit:name>
<spirit:externalPortReference spirit:portRef="slave_reset_reset"/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="reset"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="reset"/>
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="reset"/>
<spirit:internalPortReference spirit:componentRef="x_divider" spirit:portRef="reset"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="reset"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>txd_load</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="push"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>txd_data_in</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="din"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_pop</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="pop"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_data_out</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="dout"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_full</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="full"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_empty</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="empty"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_over_run</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="over_run"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_under_run</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="under_run"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>baud_clk_div</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="x_divider" spirit:portRef="enable"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>xmit_enable</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="x_divider" spirit:portRef="divider_out"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>baud_clk</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="divider_out"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>baud_clk_div</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="edge_enable"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>parity_enable</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_enable"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_parity</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_type"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_force_parity</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_force"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_pad_in</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="filter" spirit:portRef="data_in"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_pad_synced</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="filter" spirit:portRef="data_out"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="pad_in"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_data_avail_stb</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="rcv_stb"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_data_out</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="data_out"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_parity_error</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_error"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_stop_error</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="stop_error"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rxd_data_avail</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="data_avail"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>xmit_enable</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="edge_enable"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>parity_enable</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="parity_enable"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>txd_force_parity</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="parity_force"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>txd_parity</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="parity_type"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>xmit_start</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="load"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>txd_break_n</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="stop_value"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_data_out</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="data"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>cde_buffer_empty</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="buffer_empty"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>txd_pad_out</spirit:name>
<spirit:externalPortReference spirit:portRef=""/>
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="ser_out"/>
</spirit:adHocConnection>
<spirit:adHocConnection spirit:tiedValue="1'b0" >
<spirit:internalPortReference spirit:componentRef="cde_serial_xmit" spirit:portRef="start_value"/>
</spirit:adHocConnection>
<spirit:adHocConnection spirit:tiedValue="4'b1111" >
<spirit:internalPortReference spirit:componentRef="x_divider" spirit:portRef="divider_in"/>
</spirit:adHocConnection>
<spirit:adHocConnection spirit:tiedValue="PRESCALE">
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="divider_in"/>
</spirit:adHocConnection>
<spirit:adHocConnection spirit:tiedValue="1'b1">
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="enable"/>
</spirit:adHocConnection>
</spirit:adHocConnections>
<spirit:componentInstances>
<spirit:componentInstance>
<spirit:instanceName>serial_rcvr</spirit:instanceName>
<spirit:componentRef spirit:vendor="opencores.org" spirit:library="logic" spirit:name="serial_rcvr" spirit:version="fifo" />
<spirit:configurableElementValues>
<spirit:configurableElementValue spirit:referenceId="RX_FIFO_SIZE">RX_FIFO_SIZE</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="RX_FIFO_WORDS">RX_FIFO_WORDS</spirit:configurableElementValue>
</spirit:configurableElementValues>
</spirit:componentInstance>
<spirit:componentInstance>
<spirit:instanceName>cde_serial_xmit</spirit:instanceName> <spirit:componentRef spirit:vendor="opencores.org" spirit:library="cde" spirit:name="serial" spirit:version="xmit" />
</spirit:componentInstance>
<spirit:componentInstance>
<spirit:instanceName>divider</spirit:instanceName>
<spirit:componentRef spirit:vendor="opencores.org" spirit:library="cde" spirit:name="divider" spirit:version="def" />
<spirit:configurableElementValues>
<spirit:configurableElementValue spirit:referenceId="SIZE">PRE_SIZE</spirit:configurableElementValue>
</spirit:configurableElementValues>
</spirit:componentInstance>
<spirit:componentInstance>
<spirit:instanceName>fifo</spirit:instanceName>
<spirit:componentRef spirit:vendor="opencores.org" spirit:library="cde" spirit:name="fifo" spirit:version="def" />
<spirit:configurableElementValues>
<spirit:configurableElementValue spirit:referenceId="WIDTH">SIZE</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="SIZE">TX_FIFO_SIZE</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="WORDS">TX_FIFO_WORDS</spirit:configurableElementValue>
</spirit:configurableElementValues>
</spirit:componentInstance>
<spirit:componentInstance>
<spirit:instanceName>x_divider</spirit:instanceName>
<spirit:componentRef spirit:vendor="opencores.org" spirit:library="cde" spirit:name="divider" spirit:version="def" />
<spirit:configurableElementValues>
<spirit:configurableElementValue spirit:referenceId="SIZE">4</spirit:configurableElementValue>
</spirit:configurableElementValues>
</spirit:componentInstance>
<spirit:componentInstance>
<spirit:instanceName>filter</spirit:instanceName>
<spirit:componentRef spirit:vendor="opencores.org" spirit:library="cde" spirit:name="sync" spirit:version="def" />
</spirit:componentInstance>
</spirit:componentInstances>
</spirit:design>
Go to most recent revision | Compare with Previous | Blame | View Log