Entity: rx_decode
- File: rx_decode.vhd
Diagram
Description
-- ---- -- WISHBONE SPDIF IP Core ---- -- ---- -- This file is part of the SPDIF project ---- -- http://www.opencores.org/cores/spdif_interface/ ---- -- ---- -- Description ---- -- Sample decoder. Extract sample words and write to sample ---- -- buffer. ---- -- ---- -- ---- -- To Do: ---- -- - ---- -- ---- -- Author(s): ---- -- - Geir Drange, gedra@opencores.org ----
-- ----
-- ---- -- Copyright (C) 2004 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 ----
-- ----
CVS Revision History
$Log: not supported by cvs2svn $ Revision 1.4 2004/07/11 16:19:50 gedra Bug-fix.
Revision 1.3 2004/06/26 14:14:47 gedra Converted to numeric_std and fixed a few bugs.
Revision 1.2 2004/06/16 19:04:09 gedra Fixed a few bugs.
Revision 1.1 2004/06/13 18:07:47 gedra Frame decoder and sample extractor
Generics
Generic name | Type | Value | Description |
---|---|---|---|
DATA_WIDTH | integer range 16 to 32 | ||
ADDR_WIDTH | integer range 8 to 64 |
Ports
Port name | Direction | Type | Description |
---|---|---|---|
up_clk | in | std_logic | |
conf_rxen | in | std_logic | |
conf_sample | in | std_logic | |
conf_valid | in | std_logic | |
conf_mode | in | std_logic_vector(3 downto 0) | |
conf_blken | in | std_logic | |
conf_valen | in | std_logic | |
conf_useren | in | std_logic | |
conf_staten | in | std_logic | |
conf_paren | in | std_logic | |
lock | in | std_logic | |
rx_data | in | std_logic | |
rx_data_en | in | std_logic | |
rx_block_start | in | std_logic | |
rx_frame_start | in | std_logic | |
rx_channel_a | in | std_logic | |
wr_en | out | std_logic | |
wr_addr | out | std_logic_vector(ADDR_WIDTH - 2 downto 0) | |
wr_data | out | std_logic_vector(DATA_WIDTH - 1 downto 0) | |
stat_paritya | out | std_logic | |
stat_parityb | out | std_logic | |
stat_lsbf | out | std_logic | |
stat_hsbf | out | std_logic |
Signals
Name | Type | Description |
---|---|---|
adr_cnt | integer range 0 to 2**(ADDR_WIDTH - 1) - 1 | |
sampst | samp_states | |
bit_cnt | integer range 0 to 31 | |
par_cnt | integer range 0 to 31 | |
samp_start | integer range 0 to 15 | |
tmp_data | std_logic_vector(31 downto 0) | |
tmp_stat | std_logic_vector(4 downto 0) | |
valid | std_logic | |
next_is_a | std_logic | |
blk_start | std_logic |
Types
Name | Type | Description |
---|---|---|
samp_states | (IDLE, CHA_SYNC, GET_SAMP, PAR_CHK) |
Processes
- SAEX: ( up_clk, conf_rxen )
Description
State machine extracting audio samples
State machines
- State machine extracting audio samples