From: "Tracy Briscoe" Newsgroups: comp.arch.fpga Subject: Ethernet CRC Lines: 15 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Organization: University of Waikato News Cache Message-ID: <999091444.566415@clint.its.waikato.ac.nz> Cache-Post-Path: clint.its.waikato.ac.nz!unknown@freur.cs.waikato.ac.nz X-Cache: nntpcache 2.4.0b5 (see http://www.nntpcache.org/) Date: Thu, 30 Aug 2001 01:22:25 +1200 NNTP-Posting-Host: 130.217.66.28 X-Complaints-To: newsadmin@xtra.co.nz X-Trace: news.xtra.co.nz 999091444 130.217.66.28 (Thu, 30 Aug 2001 01:24:04 NZST) NNTP-Posting-Date: Thu, 30 Aug 2001 01:24:04 NZST Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-out.nibble.net!hub1.nntpserver.com!news-out.spamkiller.net!propagator-la!news-in.superfeed.net!newsfeed01.tsnz.net!news.xtra.co.nz!not-for-mail Xref: chonsp.franklin.ch comp.arch.fpga:9559 Hi. I've been fighting with Ethernet CRCs for to long now. Could someone please tell me how to generate a valid Ethernet CRC. I'm using a function generated by http://www.easics.be/webtools/crctool, that takes the data in in 4bit nibbles at a time. Thanks -Tracy ps replace computerscience with cs, and newzealand with nz when repling to me. ###### From: Douglas Grant Newsgroups: comp.arch.fpga Subject: Re: Ethernet CRC Date: Wed, 29 Aug 2001 20:59:36 +0100 Organization: Xilinx,Inc Lines: 32 Message-ID: <3B8D49A8.60A5A49E@xilinx.com> References: <999091444.566415@clint.its.waikato.ac.nz> NNTP-Posting-Host: pc-62-31-66-197-ed.blueyonder.co.uk Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------F315E435748716769A0AABBF" X-Mailer: Mozilla 4.72 [en] (Win98; I) X-Accept-Language: en Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newsmi-eu.news.garr.it!newsmi-us.news.garr.it!NewsITBone-GARR!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!news.stealth.net!news-out.nuthinbutnews.com!propagator!feed2-in.uncensored-news.com!dfw-feed.news.verio.net!news.verio.net!nntp1.hal-pc.org!12.120.16.16.MISMATCH!attdl1!attdl2!attsl2!attla2!ip.att.net!newsgate.xilinx.com!cliff.xsj.xilinx.com!not-for-mail Xref: chonsp.franklin.ch comp.arch.fpga:9590 This is a multi-part message in MIME format. --------------F315E435748716769A0AABBF Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit What do you want to do? Create some hardware? Software? Test your SW/HW? DG --------------F315E435748716769A0AABBF Content-Type: text/x-vcard; charset=us-ascii; name="douglas.grant.vcf" Content-Transfer-Encoding: 7bit Content-Description: Card for Douglas Grant Content-Disposition: attachment; filename="douglas.grant.vcf" begin:vcard n:Grant;Douglas tel;work:+44-131-666-2600x235 x-mozilla-html:FALSE org:Xilinx Inc. adr:;;;;;; version:2.1 email;internet:Douglas.Grant@xilinx.com title:Staff Design Engineer x-mozilla-cpt:;30608 fn:Dr. Douglas Grant end:vcard --------------F315E435748716769A0AABBF-- ###### From: "Tracy Briscoe" Newsgroups: comp.arch.fpga References: <999091444.566415@clint.its.waikato.ac.nz> <3B8D49A8.60A5A49E@xilinx.com> Subject: Re: Ethernet CRC Lines: 349 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Organization: University of Waikato News Cache Message-ID: <999140694.897809@clint.its.waikato.ac.nz> Cache-Post-Path: clint.its.waikato.ac.nz!unknown@freur.cs.waikato.ac.nz X-Cache: nntpcache 2.4.0b5 (see http://www.nntpcache.org/) Date: Thu, 30 Aug 2001 15:03:15 +1200 NNTP-Posting-Host: 130.217.66.28 X-Complaints-To: newsadmin@xtra.co.nz X-Trace: news.xtra.co.nz 999140695 130.217.66.28 (Thu, 30 Aug 2001 15:04:55 NZST) NNTP-Posting-Date: Thu, 30 Aug 2001 15:04:55 NZST Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!enews.sgi.com!news.xtra.co.nz!not-for-mail Xref: chonsp.franklin.ch comp.arch.fpga:9630 I'm trying to generate the CRC in hardware. The problem that I've got is that every combination that I've tried to generate the CRC, and place it in a frame, comes back as invalid. I've attached my vhdl testbench, in which I doing all this. This is all part of a custom hardware project, that will transmit and receive frames to and from Ethernet. "Douglas Grant" wrote in message news:3B8D49A8.60A5A49E@xilinx.com... > What do you want to do? Create some hardware? Software? Test your SW/HW? > > DG > begin 666 crc32test2.vhd M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T-"BTM#0HM+0T*+2T@(%1H92!C M7)I9VAT(&%S('!E7)I9VAT('-T871E;65N="!I7)I9VAT(&YO=&EC90T*+2T@86YD('1H92!A M2!)145%.PT*=7-E($E%144N;G5M97)I M8U]S=&0N86QL.PT*=7-E($E%144N4W1D7TQO9VEC7S$Q-C0N86QL.PT*=7-E M($E%144N2!497-T0F5N8V@@:7,-"@T*96YD M(%1E7!E('-E;G1E;F-E(&ES(&%R&]R($0H M,"D@>&]R($,H,C@I('AO&]R($0H,2D@>&]R($0H,"D@>&]R($,H,C@I('AO&]R($,H,S$I.PT*(" @($YE=T-2 M0R@T*2 @.CT@1"@S*2!X;W(@1"@R*2!X;W(@1"@P*2!X;W(@0R@P*2!X;W(@ M0R@R."D@>&]R($,H,S I('AO<@T*(" @(" @(" @(" @(" @(" @0R@S,2D[ M#0H@(" @3F5W0U)#*#4I(" Z/2!$*#,I('AO&]R#0H@(" @(" @(" @(" @ M(" @("!#*#,Q*3L-"B @("!.97=#4D,H-BD@(#H]($0H,BD@>&]R($0H,2D@ M>&]R($,H,BD@>&]R($,H,CDI('AO&]R($0H,BD@>&]R($0H,"D@>&]R($,H,RD@>&]R($,H,C@I M('AO&]R($,H,CDI('AO<@T*(" @(" @(" @(" @(" @(" @ M0R@S,2D[#0H@(" @3F5W0U)#*#DI(" Z/2!$*#(I('AO&]R#0H@(" @(" @(" @(" @(" @("!#*#,Q*3L-"B @("!.97=# M4D,H,3$I(#H]($0H,RD@>&]R($0H,2D@>&]R($0H,"D@>&]R($,H-RD@>&]R M($,H,C@I('AO&]R($,H,CDI('AO<@T*(" @(" @(" @(" @ M(" @(" @0R@S,"D[#0H@(" @3F5W0U)#*#$S*2 Z/2!$*#,I('AO&]R#0H@ M(" @(" @(" @(" @(" @("!#*#,Q*3L-"B @("!.97=#4D,H,30I(#H]($0H M,RD@>&]R($0H,BD@>&]R($,H,3 I('AO&]R($,H M,C@I.PT*(" @($YE=T-20R@R,RD@.CT@1"@Q*2!X;W(@1"@P*2!X;W(@0R@Q M.2D@>&]R($,H,C@I('AO&]R($0H,2D@>&]R($,H,C I('AO&]R($,H,S$I.PT*(" @($YE=T-20R@R-BD@.CT@1"@S*2!X;W(@ M1"@P*2!X;W(@0R@R,BD@>&]R($,H,C@I('AO&]R($,H,C,I('AO&]R($,H,C0I('AO&]R($,H,C4I('AO2!C86QL(&YE>'1#4D,S,E\T('1O(&9I;F0@=&AE M(&-R8R!F;W(@=&AE('-E;G1E;F-E#0H@("TM('-T87)T(&ES('=H870@=&AE M(&-R8R!A8V-U;6QA=&]R(&ES(&EN:71I86QL>2!S970@=&\-"B @9G5N8W1I M;VX@1FEN9$-20R H#0H@(" @87,@(" @(" @(" @(" @(" @(" @(" Z('-E M;G1E;F-E.PT*(" @('-T87)T(" @(" @(" @(" @(" @(" @.B!S=&1?;&]G M:6-?=F5C=&]R*#,Q(&1O=VYT;R P*3L-"B @("!R979E'1#4D,S M,E]$-"AD;BP@0U)#*3L-"B @(" @(&5N9"!I9CL-"B @("!E;F0@;&]O<#L@ M("TM(&D-"B @("!R971U71E71E71E'0@:7,@;W5T M(")S8RYT>'0B.PT*(" @('9A'0@:7,@;W5T(")C7!E#0H@(" @("!DF4- M"B @(" @(&9O2 S M,B!B>71E Newsgroups: comp.arch.fpga Subject: Re: Ethernet CRC Date: Thu, 30 Aug 2001 10:11:25 -0700 Organization: Fluke Networks Lines: 28 Message-ID: <3B8E73BD.12C35C22@flukenetworks.com> References: <999091444.566415@clint.its.waikato.ac.nz> <3B8D49A8.60A5A49E@xilinx.com> <999140694.897809@clint.its.waikato.ac.nz> NNTP-Posting-Host: slick.tc.fluke.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.4.4-4GB i686) X-Accept-Language: en Path: chonsp.franklin.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newsfeed.mathworks.com!nycmny1-snh1.gtei.net!evrtwa1-snf1.gtei.net!news.gtei.net!newsfeed2.sea.pnap.net!newsfeed1.sea.pnap.net!newsfeed.pnap.net!fluke!not-for-mail Xref: chonsp.franklin.ch comp.arch.fpga:9619 Tracy Briscoe wrote: > > I'm trying to generate the CRC in hardware. The problem that I've got is > that every combination that I've tried to generate the CRC, and place it in > a frame, comes back as invalid. I've attached my vhdl testbench, in which I > doing all this. This is all part of a custom hardware project, that will > transmit and receive frames to and from Ethernet. lots of possible bit/byte order problems. check out: http://www.erg.abdn.ac.uk/users/gorry/course/dl-pages/crc.html especially: "Bit Order "The CRC is the only field which is by convention sent most significant bit first. (This is contrary to all header and payload bytes which are sent least significant bit first.) Thus the first bit of the a CRC-32 to be sent is the bit corresponding to X32 and the last, the bit corresponding to X0." Good luck. --Mike Treseler