DOC PREVIEW
Berkeley COMPSCI 150 - Lab 6, Network Audio

This preview shows page 1-2-3 out of 9 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Time TableMotivationIntroductionNetworking BasicsNetwork OrganizationNetwork Protocol LayersEthernet PacketsPrelabLab ProcedureChipScopeRegister.vCounter.vfifo_async32.vEth2Audio.vReferencesLab 6 CheckoffEECS150: Lab 6, Network AudioUC Berkeley College of EngineeringDepartment of Electrical Engineering and Computer ScienceOctober 2, 20081 Time TableASSIGNED Friday, October 3rdDUE Week 8: October 12th− October 18th, 10 minutes after your lab section starts2 MotivationIn order to better acquaint you with a more refined design process, as well as provide an interestingand yet simple lab, this week you will be designing a circuit to decode Ethernet frames containing PCMaudio data.The cornerstones of the EECS150 class are registers and gates, which can be built into incrediblypowerful structures like counters, shift-registers and the like. However all too often the temptation is touse a more general Finite State Machine construction where a simpler more regular component like acounter could do a better job with fewer bugs and less code.3 IntroductionAs described in Section 2 above, the primary goal of this lab is to parse Ethernet packets,filtering them based on address and type information and then send the PCM audio data payload on tobe played without using a general FSM. The idea in this lab is to acquaint you with more powerfuldesign techniques which will not only save you design and coding time, but will avoid many bugs, whilesimultaneously making your circuits smaller, easier to understand and more efficient in terms of powerand space.Part of the point of this lab is also to expose you to the kind of interesting circuits you can build inthis class, and the kind of circuits you will build for your project. To make this interesting, we have setup a computer in the lab which will be broadcasting music. The audio stream is being broadcast directlyfrom a PC running MicrosoftR WindowsXPR and Nullsoft’sR Winamp5R with a custom made outputplugin which takes PCM audio data as decoded from MP3 files and sends it out in raw Ethernet packets.During this lab you MAY NOT use Finite State Machines or behavioral verilog. Youmust use assigns statements for all combinational logic and the Counter.v or Register.vmodules for all sequential elements.3.1 Networking BasicsAcross the world most LANs (Local Area Networks) are currently built on the 100BaseTX Ethenetstandard, because it uses inexpensive cable, the hardware is cheap (and backward compatible) and it isboth fast and reliable over relatively long distances (250 m).1Ethernet is a packet switched network as opposed to a circuit switched network like thetelephone system. This means that unlike a phone call, which establishes some kind of connectionbetween you and the person you call, Ethernet simply takes a bunch of short messages, or packets andshuffles them around. Normally this has all kinds of implications, like the fact that packets can be lost,corrupted and can even arrive out of order. However for this checkpoint we wont worry about theseproblems, since they are unlikely to be noticeable on our small controlled network.3.2 Network OrganizationFigure 1 Network Organization for Lab 6Audio StreamWHITE (0)TA StationCaLinx2 CaLinx2 CaLinx2 CaLinx2 CaLinx2 CaLinx2 CaLinx2Figure 1 is a simple diagram of the test network set up in 125 Cory for this lab. Notice that thegreen (0) network is fully connected to all boards and will carry the broadcast audio stream whichyou will be receiving.Note that part of your debugging process should be to make sure that you are using the correctnetwork and that all the right cables are connected. There is a green LED near each RJ45 networkjack will be appear lit when the network port is connected. The amber LED will blink or turn onwhen there is network traffic on that port. These LEDs are an invaluable and simple way to debugbasic connection problems.3.3 Network Protocol LayersRemember in Section 3.1 how we said that Ethernet was packet switched and that it might do thingslike reorder and lose packets? Well most applications can’t tolerate that. Imagine if your e-mail justsometimes got broken up or reordered.To prevent problems like that CS majors build protocol stacks such as the one shown in Figure 2.In this model, Ethernet would be the physical layer upon which a data link layer depends. TCP/IPwhich adds a lot of features (like protection against missing or reordered packets) would be layers 3and 4 the network and transport layers. In essence each layer depends upon, and expands thecapabilities of the layer below it.Looking at Figure 2 you can see it might be a little much to have to build for just one lab. Soinstead we’re going to use a much simpler model, as shown in Figure 3 below. In this model we have aWindows PC running Winamp5 connected to an LXT975 Ethernet Phy chip directly or througha network switch.You will also build the Audio layer, which isn’t really a normal networking layer. This is just ourversion of the application layer from Figure 2. Our application is sending audio over Ethernet, soat the top of our protocol stack we have an audio layer circuit which will decode and filter theincoming packets into a 32-bit FIFO. The audio layer doesn’t have to know or care about the MAC2Figure 2 ISO/OSI Standard Protocol LayersApplicationPresentationSessionTransportNetworkData LinkPhysicalComputer AApplicationPresentationSessionTransportNetworkData LinkPhysicalComputer BISO/OSI Standard 7 Layer ModelReal ConnectionVirtual ConnectionsFigure 3 Simplified Lab 6Protocol LayersAudio (Winamp)Data LinkPhysicalAudio StreamAudioMAC (FPGA)Phy (LXT975)CaLinx2 BoardLab6 Simplified ModelReal ConnectionsVirtual ConnectionsWHITE (0)Network Switch (MAC/Phy Built In)and Phy layer magic taking place behind the scenes. That’s the whole point of protocol layers,you can build the simple audio layer without knowing anything about the circuits we’reproviding.3.4 Ethernet PacketsFigure 4 Ethernet Packet FormatsDestination [47:16]32bitsDestination [15:0] Source [47:32]Source [31:0]Ethernet Type [15:0] Reserved [15:0]PCM Audio Data Sample 0 [31:0]PCM Audio Data Sample 1023 [31:0]1028words0xFFFFFFFF32bits0xFFFF 0x00900xc2001c500x0101 0x????PCM Audio Data Sample 0 [31:0]PCM Audio Data Sample 1023 [31:0]Ethernet Packet Format Broadcast Audio Packet1024wordsCRC [31:0]3Figure 4 shows the basic format of the Ethernet packets you will be working with. Aside from1024 × 32 − bitwords of PCM Audio Data each


View Full Document

Berkeley COMPSCI 150 - Lab 6, Network Audio

Documents in this Course
Lab 2

Lab 2

9 pages

Debugging

Debugging

28 pages

Lab 1

Lab 1

15 pages

Memory

Memory

13 pages

Lecture 7

Lecture 7

11 pages

SPDIF

SPDIF

18 pages

Memory

Memory

27 pages

Exam III

Exam III

15 pages

Quiz

Quiz

6 pages

Problem

Problem

3 pages

Memory

Memory

26 pages

Lab 1

Lab 1

9 pages

Memory

Memory

5 pages

Load more
Download Lab 6, Network Audio
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lab 6, Network Audio and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lab 6, Network Audio 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?