URL
https://opencores.org/ocsvn/socgen/socgen/trunk
Subversion Repositories socgen
[/] [socgen/] [trunk/] [Projects/] [opencores.org/] [logic/] [ip/] [serial_rcvr/] [rtl/] [xml/] [serial_rcvr_fifo.design.xml] - Rev 134
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>serial_rcvr</spirit:name>
<spirit:version>fifo.design</spirit:version>
<spirit:vendorExtensions><socgen:nodes>
<socgen:node><spirit:name>baud_enable</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>stop_cnt</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>last_cnt</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>next_shift_buffer</spirit:name>
<spirit:typeName>wire</spirit:typeName>
<spirit:wire>
<spirit:vector><spirit:left>WIDTH-1</spirit:left><spirit:right>0</spirit:right></spirit:vector></spirit:wire>
</socgen:node>
<socgen:node><spirit:name>next_parity_calc</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>next_parity_samp</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>next_frame_error</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>parity_calc</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>parity_samp</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>frame_rdy</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>start_detect</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>rxd_pad_sig</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>rdy_del</spirit:name>
<spirit:typeName>reg</spirit:typeName>
<spirit:wire>
<spirit:vector><spirit:left>1</spirit:left><spirit:right>0</spirit:right></spirit:vector></spirit:wire>
</socgen:node>
<socgen:node><spirit:name>shift_buffer</spirit:name>
<spirit:typeName>reg</spirit:typeName>
<spirit:wire>
<spirit:vector><spirit:left>WIDTH-1</spirit:left><spirit:right>0</spirit:right></spirit:vector></spirit:wire>
</socgen:node>
<socgen:node><spirit:name>frame_parity_error</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>frame_error</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>frame_avail</spirit:name>
<spirit:typeName>reg</spirit:typeName>
</socgen:node>
<socgen:node><spirit:name>divider_reset</spirit:name>
<spirit:typeName>wire</spirit:typeName>
</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>fifo_din</spirit:name>
<spirit:typeName>wire</spirit:typeName>
<spirit:wire>
<spirit:vector><spirit:left>WIDTH+1</spirit:left><spirit:right>0</spirit:right></spirit:vector></spirit:wire>
</socgen:node>
<socgen:node><spirit:name>fifo_dout</spirit:name>
<spirit:typeName>wire</spirit:typeName>
<spirit:wire>
<spirit:vector><spirit:left>WIDTH+1</spirit:left><spirit:right>0</spirit:right></spirit:vector></spirit:wire>
</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="serial_rcvr" spirit:portRef="clk"/>
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="clk"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="clk"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>reset</spirit:name>
<spirit:externalPortReference spirit:portRef="slave_reset_reset"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="reset"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="reset"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>divider_reset</spirit:name>
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="reset"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>edge_enable</spirit:name>
<spirit:externalPortReference spirit:portRef="edge_enable"/>
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="enable"/>
</spirit:adHocConnection>
<spirit:adHocConnection spirit:tiedValue="4'b1111" >
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="divider_in"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>baud_enable</spirit:name>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="edge_enable"/>
<spirit:internalPortReference spirit:componentRef="divider" spirit:portRef="divider_out"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>parity_enable</spirit:name>
<spirit:externalPortReference spirit:portRef="parity_enable"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_enable"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>parity_type</spirit:name>
<spirit:externalPortReference spirit:portRef="parity_type"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_type"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>parity_force</spirit:name>
<spirit:externalPortReference spirit:portRef="parity_force"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_force"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>stop_cnt</spirit:name>
<spirit:externalPortReference spirit:portRef="stop_cnt"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="stop_cnt"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>last_cnt</spirit:name>
<spirit:externalPortReference spirit:portRef="last_cnt"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="last_cnt"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>pad_in</spirit:name>
<spirit:externalPortReference spirit:portRef="pad_in"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="ser_in"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>next_shift_buffer</spirit:name>
<spirit:externalPortReference spirit:portRef="next_shift_buffer"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="shift_buffer"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>next_parity_calc</spirit:name>
<spirit:externalPortReference spirit:portRef="next_parity_calc"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_calc"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>next_parity_samp</spirit:name>
<spirit:externalPortReference spirit:portRef="next_parity_samp"/>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="parity_samp"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>next_frame_error</spirit:name>
<spirit:internalPortReference spirit:componentRef="serial_rcvr" spirit:portRef="frame_err"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>last_cnt</spirit:name>
<spirit:externalPortReference spirit:portRef="last_cnt"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="push"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_din</spirit:name>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="din"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>rcv_stb</spirit:name>
<spirit:externalPortReference spirit:portRef="rcv_stb"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="pop"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_dout</spirit:name>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="dout"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_full</spirit:name>
<spirit:externalPortReference spirit:portRef="fifo_full"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="full"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_empty</spirit:name>
<spirit:externalPortReference spirit:portRef="fifo_empty"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="empty"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_over_run</spirit:name>
<spirit:externalPortReference spirit:portRef="fifo_over_run"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="over_run"/>
</spirit:adHocConnection>
<spirit:adHocConnection>
<spirit:name>fifo_under_run</spirit:name>
<spirit:externalPortReference spirit:portRef="fifo_under_run"/>
<spirit:internalPortReference spirit:componentRef="fifo" spirit:portRef="under_run"/>
</spirit:adHocConnection>
</spirit:adHocConnections>
<spirit:componentInstances>
<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">4</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="SAMPLE">8</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="RESET">0</spirit:configurableElementValue>
</spirit:configurableElementValues>
</spirit:componentInstance>
<spirit:componentInstance>
<spirit:instanceName>serial_rcvr</spirit:instanceName> <spirit:componentRef spirit:vendor="opencores.org" spirit:library="cde" spirit:name="serial" spirit:version="rcvr" />
<spirit:configurableElementValues>
<spirit:configurableElementValue spirit:referenceId="WIDTH">WIDTH</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="SIZE">SIZE</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="BREAK">1</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="STOP_VALUE">STOP_VALUE</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">WIDTH+2</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="SIZE">RX_FIFO_SIZE</spirit:configurableElementValue>
<spirit:configurableElementValue spirit:referenceId="WORDS">RX_FIFO_WORDS</spirit:configurableElementValue>
</spirit:configurableElementValues>
</spirit:componentInstance>
</spirit:componentInstances>
</spirit:design>
Go to most recent revision | Compare with Previous | Blame | View Log