reed
所属分类 :VHDL/FPGA/Verilog
开发工具 :VHDL
文件大小 :1829KB
下载次数 :49
上传日期 :2009-06-12 15:36:53
上 传 者 :
kamranmu
说明: this is the completedocumentation and code about reed solomon logic implemented on fpga in verilog.
文件列表 :
reed (0, 2009-06-05) reed\01_Petrus_GENERIC_REED_SOLOMON_ENCODER_Layout.PDF (293681, 2009-05-21) reed\art_sklar7_reed-solomon.pdf (760662, 2009-05-21) reed\Fettweis_G_ISCAS_92.pdf (236473, 2009-05-21) reed\huang.ppt (409088, 2009-05-21) reed\IntrRSCode.pdf (310170, 2009-05-21) reed\manasse.ppt (148480, 2009-05-21) reed\ReedSolomon.pdf (116927, 2009-05-21) reed\rse_brief.pdf (51732, 2009-05-21) reed\WebSVN - rsencoder - Rev 6 - -rsencoder-web_uploads-reed_solomon_v.mht (126092, 2009-05-20) reed\WebSVN - rsencoder - Rev 6 - -rsencoder-web_uploads-rs_testbench_v.mht (75074, 2009-05-20) reed\xyz.v (8188, 2009-05-21)
From: "Saved by Windows Internet Explorer 7"
Subject: WebSVN - rsencoder - Rev 6 - /rsencoder/web_uploads/readme.txt
Date: Wed, 20 May 2009 20:04:03 +0500
MIME-Version: 1.0
Content-Type: multipart/related;
type="text/html";
boundary="----=_NextPart_000_0000_01C9D***6.1F775890"
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6000.16669
This is a multi-part message in MIME format.
------=_NextPart_000_0000_01C9D***6.1F775890
Content-Type: text/html;
charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.opencores.org/websvn/filedetails.php?repname=rsencoder&path=%2Frsencoder%2Fweb_uploads%2Freadme.txt&project=rsencoder
=EF=BB=BF
WebSVN - rsencoder - =
Rev 6 - /rsencoder/web_uploads/readme.txt
Compare=20
with Previous | Blame =20
| View Log =20
I/O inputs -
Inputs :
datain (8 bits) =3D serial input where message data is fed. =
If the message polynomial of form,
d_nX^n + d_(n-1)X^(n-1) + ......etc., then d_n =
followed by d_(n-1) in the next=20
clock cyle, .....etc. datain should contain a new =
message byte at every clock cycle
as long as the valid is high.
gin0.....gin15 (8 bits each ) =3D Generator polynomial =
co-effcients. The generator polynomial
is form =
X^16+gin15X^15+gin14X^14+ ......gin1X+gin0.
valid =3D Pull high when data becomes available. Pull low =
when all message bytes (total of 239=20
bytes) has been entered. By pulling valid low the =
contents of the registers are freezed.
Pull high when the next block (239 bytes) of =
message data is available.
clkin =3D input clock.
rst =3D reset signal to initialize registers (to all =
zeros).
Outputs :
q0....q15 (8 bits each) : Parity bytes in the polynomial =
form,=20
q15X^15+q14X^14+ ......q0. Latch =
externally if required. Valid as long
as valid signal is low.
=20
Compare=20
with Previous | Blame =20
| View Log =20
------=_NextPart_000_0000_01C9D***6.1F775890
Content-Type: text/css;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.opencores.org/websvn/templates/calm/styles.css
HTML {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 13px; BACKGROUND: =
#fff; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: gray; LINE-HEIGHT: 1.3em; =
PADDING-TOP: 0px; FONT-FAMILY: 'Trebuchet MS', Verdana, sans-serif; =
HEIGHT: 95%; TEXT-ALIGN: center
}
BODY {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 13px; BACKGROUND: =
#fff; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: gray; LINE-HEIGHT: 1.3em; =
PADDING-TOP: 0px; FONT-FAMILY: 'Trebuchet MS', Verdana, sans-serif; =
HEIGHT: 95%; TEXT-ALIGN: center
}
#container {
MIN-HEIGHT: 100%; PADDING-BOTTOM: 40px; POSITION: relative
}
* HTML #container {
HEIGHT: 95%
}
#footer {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
-40px 0px 0px; PADDING-TOP: 0px; POSITION: relative; HEIGHT: 40px
}
A {
COLOR: #000; TEXT-DECORATION: none; outline: none
}
A:link {
COLOR: #000; TEXT-DECORATION: none
}
A IMG {
BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; BORDER-RIGHT-WIDTH: 0px
}
A:hover {
BACKGROUND-COLOR: khaki
}
STRONG {
FONT-WEIGHT: normal; COLOR: gray
}
B {
FONT-WEIGHT: normal; COLOR: gray
}
#select {
PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; MARGIN: =
1em 2% 0px; PADDING-TOP: 10px; HEIGHT: 2em; TEXT-ALIGN: right
}
#input {
PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; MARGIN: =
-3.7em 2% 0px; PADDING-TOP: 10px; HEIGHT: 2em; TEXT-ALIGN: right
}
#wrap {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; =
PADDING-BOTTOM: 5px; MARGIN: 0px 2% 0px 32%; WIDTH: 66%; PADDING-TOP: =
5px; TEXT-ALIGN: left
}
#info {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
5px; MARGIN-LEFT: 2%; WIDTH: 28%; PADDING-TOP: 5px; TEXT-ALIGN: left
}
H1 {
FONT-WEIGHT: normal; TEXT-TRANSFORM: uppercase; COLOR: gray; =
LINE-HEIGHT: 1em; TEXT-ALIGN: left
}
H2 {
FONT-WEIGHT: normal; TEXT-TRANSFORM: uppercase; COLOR: gray; =
LINE-HEIGHT: 1em; TEXT-ALIGN: left
}
H1 {
PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: normal; FONT-SIZE: =
1.7em; PADDING-BOTTOM: 10px; MARGIN: -1.7em 2% 1em; LINE-HEIGHT: 1.7em; =
PADDING-TOP: 10px; BORDER-BOTTOM: gray 1px solid; LETTER-SPACING: =
-0.01em; TEXT-ALIGN: left
}
H1 SPAN {
PADDING-LEFT: 22px; BACKGROUND: url(images/cube_green.png) no-repeat =
0px 50%
}
H1 SPAN A {
COLOR: gray
}
H1 SPAN A:link {
COLOR: gray
}
H2 A {
PADDING-RIGHT: 2px; PADDING-LEFT: 2px; BACKGROUND: #fff; =
PADDING-BOTTOM: 2px; MARGIN: 0px; PADDING-TOP: 2px
}
H2 A:link {
FONT-WEIGHT: normal; COLOR: #b00; LETTER-SPACING: -0.01em
}
H2 A:visited {
FONT-WEIGHT: normal; COLOR: #b00; LETTER-SPACING: -0.01em
}
H2 A:hover {
BACKGROUND: #f2f2f2
}
H2 {
PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 0px; COLOR: #666; PADDING-TOP: 0px; LETTER-SPACING: =
-0.01em
}
#info H2 {
PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: normal; FONT-SIZE: =
1.7em; PADDING-BOTTOM: 10px; MARGIN: 0px; PADDING-TOP: 0px; =
BORDER-BOTTOM: gray 1px solid; LETTER-SPACING: -0.01em; TEXT-ALIGN: left
}
#wrap H2 {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1.7em; =
PADDING-BOTTOM: 10px; MARGIN: 0px; TEXT-TRANSFORM: none; PADDING-TOP: =
0px; LETTER-SPACING: -0.01em; TEXT-ALIGN: left
}
#wrap H2.regular {
PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 1.7em; =
PADDING-BOTTOM: 10px; MARGIN: 0px; TEXT-TRANSFORM: uppercase; =
PADDING-TOP: 0px; BORDER-BOTTOM: gray 1px solid; TEXT-ALIGN: left
}
INPUT {
BORDER-RIGHT: #000 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: #b2b2b2 =
1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: 1px; =
BORDER-LEFT: #b2b2b2 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: #000 =
1px solid; FONT-FAMILY: 'Trebuchet MS', 'Lucida Grande', Verdana, Arial, =
sans-serif; BACKGROUND-COLOR: cornsilk
}
SELECT {
BORDER-RIGHT: #000 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: #b2b2b2 =
1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: 1px; =
BORDER-LEFT: #b2b2b2 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: #000 =
1px solid; FONT-FAMILY: 'Trebuchet MS', 'Lucida Grande', Verdana, Arial, =
sans-serif; BACKGROUND-COLOR: cornsilk
}
INPUT {
BORDER-RIGHT: #b2b2b2 1px solid; PADDING-RIGHT: 5px; =
BACKGROUND-POSITION: 0px 100%; BORDER-TOP: #b2b2b2 1px solid; =
PADDING-LEFT: 5px; FONT-SIZE: 1.1em; BACKGROUND-IMAGE: =
url(images/textbg.png); PADDING-BOTTOM: 2px; BORDER-LEFT: #b2b2b2 1px =
solid; PADDING-TOP: 2px; BORDER-BOTTOM: #b2b2b2 1px solid; =
BACKGROUND-REPEAT: repeat-x; BACKGROUND-COLOR: #fff
}
INPUT:hover {
BORDER-RIGHT: #666 1px solid; BORDER-TOP: #666 1px solid; BORDER-LEFT: =
#666 1px solid; BORDER-BOTTOM: #666 1px solid; BACKGROUND-COLOR: #fff
}
INPUT:active {
BORDER-RIGHT: #666 1px solid; BORDER-TOP: #666 1px solid; BORDER-LEFT: =
#666 1px solid; BORDER-BOTTOM: #666 1px solid; BACKGROUND-COLOR: #fff
}
INPUT:focus {
BORDER-RIGHT: #666 1px solid; BORDER-TOP: #666 1px solid; BORDER-LEFT: =
#666 1px solid; BORDER-BOTTOM: #666 1px solid; BACKGROUND-COLOR: #fff
}
#info UL LI INPUT {
BORDER-RIGHT: #b2b2b2 1px solid; BACKGROUND-POSITION: 0px 100%; =
BORDER-TOP: #b2b2b2 1px solid; BACKGROUND-IMAGE: url(images/textbg.png); =
BORDER-LEFT: #b2b2b2 1px solid; BORDER-BOTTOM: #b2b2b2 1px solid; =
BACKGROUND-REPEAT: repeat-x; BACKGROUND-COLOR: #fff
}
SPAN.submit INPUT {
BACKGROUND-IMAGE: url(images/submitbg.png)
}
#info SPAN.submit INPUT {
BACKGROUND-IMAGE: url(images/submitbg.png)
}
#info P.submit INPUT {
BACKGROUND-IMAGE: url(images/submitbg.png)
}
#wrap P.submit INPUT {
BACKGROUND-IMAGE: url(images/submitbg.png)
}
#info TABLE TBODY TR TD INPUT {
FONT-SIZE: 1em; BACKGROUND: url(images/textbg.png) #fff repeat-x 0px =
0px; WIDTH: 92%
}
#info TABLE TBODY TR TD.revcomp INPUT {
WIDTH: 50px
}
SELECT {
BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 2px; =
BACKGROUND-POSITION: 2px 50%; BORDER-TOP: #cccccc 1px solid; =
PADDING-LEFT: 21px; BACKGROUND-IMAGE: url(images/cube_green.png); =
PADDING-BOTTOM: 2px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-REPEAT: no-repeat; =
BACKGROUND-COLOR: #fff
}
SELECT:hover {
BORDER-RIGHT: #666 1px solid; BACKGROUND-POSITION: 2px 50%; BORDER-TOP: =
#666 1px solid; BACKGROUND-IMAGE: url(images/cube_green.png); =
BORDER-LEFT: #666 1px solid; BORDER-BOTTOM: #666 1px solid; =
BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: beige
}
SELECT:active {
BORDER-RIGHT: #666 1px solid; BACKGROUND-POSITION: 2px 50%; BORDER-TOP: =
#666 1px solid; BACKGROUND-IMAGE: url(images/cube_green.png); =
BORDER-LEFT: #666 1px solid; BORDER-BOTTOM: #666 1px solid; =
BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: beige
}
SELECT:focus {
BORDER-RIGHT: #666 1px solid; BACKGROUND-POSITION: 2px 50%; BORDER-TOP: =
#666 1px solid; BACKGROUND-IMAGE: url(images/cube_green.png); =
BORDER-LEFT: #666 1px solid; BORDER-BOTTOM: #666 1px solid; =
BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: beige
}
OPTION {
BACKGROUND-POSITION: 2px 50%; PADDING-LEFT: 25px; BACKGROUND-IMAGE: =
url(images/cube_green.png); BACKGROUND-REPEAT: no-repeat
}
OPTION:hover {
BACKGROUND-POSITION: 2px 50%; PADDING-LEFT: 25px; BACKGROUND-IMAGE: =
url(images/cube_green.png); BACKGROUND-REPEAT: no-repeat
}
OPTION:focus {
BACKGROUND-POSITION: 2px 50%; PADDING-LEFT: 25px; BACKGROUND-IMAGE: =
url(images/cube_green.png); BACKGROUND-REPEAT: no-repeat
}
OPTION:active {
BACKGROUND-POSITION: 2px 50%; PADDING-LEFT: 25px; BACKGROUND-IMAGE: =
url(images/cube_green.png); BACKGROUND-REPEAT: no-repeat
}
DL.projectlist DD A {
BACKGROUND-POSITION: 2px 50%; PADDING-LEFT: 22px; BACKGROUND-IMAGE: =
url(images/cube_green.png); BACKGROUND-REPEAT: no-repeat
}
.projectlisthead {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 13px
}
.projectlist .groupname {
PADDING-RIGHT: 0px; BORDER-TOP: gray 1px dotted; PADDING-LEFT: 0px; =
PADDING-BOTTOM: 5px; PADDING-TOP: 3px
}
.showstate {
PADDING-RIGHT: 4px; PADDING-LEFT: 2px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.projectlist .project {
PADDING-RIGHT: 0px; BACKGROUND-POSITION: 12px 50%; PADDING-LEFT: 32px; =
BACKGROUND-IMAGE: url(images/cube_green.png); PADDING-BOTTOM: 5px; =
PADDING-TOP: 3px; BACKGROUND-REPEAT: no-repeat
}
#info DL {
MARGIN-LEFT: 0px
}
#info DT {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; MARGIN: =
0px; PADDING-TOP: 0px
}
#wrap DT {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; MARGIN: =
0px; PADDING-TOP: 0px
}
#info DD {
PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 5px; MARGIN: =
0px; PADDING-TOP: 3px
}
#wrap DD {
PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 5px; MARGIN: =
0px; PADDING-TOP: 3px
}
DD.curdir {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 2px; MARGIN: 5px =
0px 0px; PADDING-TOP: 2px
}
DD.curdir PRE {
PADDING-RIGHT: 2px; DISPLAY: block; PADDING-LEFT: 22px; BACKGROUND: =
url(images/folder.png) no-repeat 2px 50%; PADDING-BOTTOM: 2px; MARGIN: =
2px 2px 0px -2px; PADDING-TOP: 2px; FONT-FAMILY: 'Trebuchet MS', =
verdana, sans-serif
}
DD.curdir PRE {
FONT-SIZE: 1em; COLOR: #545400
}
#info UL {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
#info UL LI {
PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; MARGIN: 3px =
0px; OVERFLOW: hidden; PADDING-TOP: 5px
}
.mod BR {
DISPLAY: none
}
.new BR {
DISPLAY: none
}
LI.mod A {
PADDING-RIGHT: 5px; BACKGROUND-POSITION: 5px 50%; PADDING-LEFT: 26px; =
PADDING-BOTTOM: 5px; MARGIN: 2px 0px 2px -2px; PADDING-TOP: 5px; =
BACKGROUND-REPEAT: no-repeat
}
LI.new A {
PADDING-RIGHT: 5px; BACKGROUND-POSITION: 5px 50%; PADDING-LEFT: 26px; =
PADDING-BOTTOM: 5px; MARGIN: 2px 0px 2px -2px; PADDING-TOP: 5px; =
BACKGROUND-REPEAT: no-repeat
}
#info LI.del {
PADDING-RIGHT: 5px; BACKGROUND-POSITION: 5px 50%; PADDING-LEFT: 26px; =
PADDING-BOTTOM: 5px; MARGIN: 2px 0px 2px -2px; PADDING-TOP: 5px; =
BACKGROUND-REPEAT: no-repeat
}
A.modified {
BACKGROUND-POSITION: 5px 50%; PADDING-LEFT: 26px; BACKGROUND-REPEAT: =
no-repeat
}
A.added {
BACKGROUND-POSITION: 5px 50%; PADDING-LEFT: 26px; BACKGROUND-REPEAT: =
no-repeat
}
A.deleted {
BACKGROUND-POSITION: 5px 50%; PADDING-LEFT: 26px; BACKGROUND-REPEAT: =
no-repeat
}
A.modified {
BACKGROUND-IMAGE: url(images/page_white_edit.png)
}
A.added {
BACKGROUND-IMAGE: url(images/page_white_add.png)
}
A.deleted {
BACKGROUND-IMAGE: url(images/page_white_delete.png)
}
LI.mod A {
BORDER-RIGHT: #f2f2c7 1px solid; BORDER-TOP: #f2f2c7 1px solid; =
DISPLAY: block; BACKGROUND-IMAGE: url(images/page_white_edit.png); =
BORDER-LEFT: #f2f2c7 1px solid; COLOR: #545400; BORDER-BOTTOM: #f2f2c7 =
1px solid; BACKGROUND-COLOR: lightyellow
}
LI.mod A:hover {
BORDER-RIGHT: darkkhaki 1px solid; BORDER-TOP: darkkhaki 1px solid; =
BORDER-LEFT: darkkhaki 1px solid; COLOR: #000; BORDER-BOTTOM: darkkhaki =
1px solid; BACKGROUND-COLOR: khaki
}
LI.new A {
BORDER-RIGHT: #d5f2c7 1px solid; BORDER-TOP: #d5f2c7 1px solid; =
DISPLAY: block; BACKGROUND-IMAGE: url(images/page_white_add.png); =
BORDER-LEFT: #d5f2c7 1px solid; COLOR: #545400; BORDER-BOTTOM: #d5f2c7 =
1px solid; BACKGROUND-COLOR: #f2ffd9
}
LI.new A:hover {
BORDER-RIGHT: #669900 1px solid; BORDER-TOP: #669900 1px solid; =
BORDER-LEFT: #669900 1px solid; COLOR: #000; BORDER-BOTTOM: #669900 1px =
solid; BACKGROUND-COLOR: yellowgreen
}
#info UL LI.del {
BORDER-RIGHT: rosybrown 1px solid; PADDING-RIGHT: 5px; =
BACKGROUND-POSITION: 5px 5px; BORDER-TOP: rosybrown 1px solid; DISPLAY: =
block; PADDING-LEFT: 26px; BACKGROUND-IMAGE: =
url ... ...
近期下载者 :
相关文件 :
收藏者 :