DOC PREVIEW
MIT 6 111 - Study Notes

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

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 13 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 13 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 13 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 13 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 13 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

GPS Data LoggerAlexander Valys6.111 Fall 2006Design Objectives•Build a system that logs its position over time using GPS, displays position history•Data logging component should be portable, optimized for use in automobiles (fast movements, low precision)•Visualization component can be separate, output different renderings of the data on a VGA displayData Logger•Implementation will be on Digilent Nexys board•Small, portable, low power consumption - can be driven from batteries•Use SiRF StarIII GPS Receiver to obtain data•Use Micron P25M16 Serial Flash module to store data, transfer to visualizationSiRF StarIII•Self-contained GPS module (on right)•Communication through an RS232 interface (TTL-level)•Once locked, provides 3-axis position, 3-axis velocity, heading, etc. at 1Hz•Proprietary binary protocol vs. NMEA (ASCII)Micron M25P16•16 megabit Flash module - SPI interface•Each position fix is 128 bits long - latitude, longitude, velocity (x,y), altitude•Recording every fix received yields 35 hours of recording timeData Logger ImplementationGPS Receiver (SiRF StarIII)RS232 InputTxRxRS232 OutputInitializerdata / 9SiRF Message Parserdata / 9availableData Log Encoder fix / 160writedata / 8eraseSerial Flash ROM OutputSerial Flash (Micron M25P16)Clock and Reset are global signalsSDISELMobile Data LoggerSerial Flash (Micron M25P16)Serial Flash ROM InputSELSDISDOavailabledata / 8Data Log Decoder SDOfix = {latitude / 32longitude / 32altitude / 32timestamp / 32velocity / 32}Fix Queuenextnextavailablefix / 129Rendering Managerrestartfix is as above, but w/o timestamp,an with extra bit indicating EOFfix / 129emptyreadIMPS/2 Decoderavailablelmr/3x/8y/8z/8ps/2 dataps/2 clkactive / 4command/128fix / 129availablecommand is a tristate busAltitude vs. timeVelocity vs. time2D Position2D Position + Altitude (3D)2D Position + Velocity (3D)2D TransformNull Transform3D Transformcommand/136Rectangle FillLine DrawText DrawVRAM Managerall inputs to advance are ANDed togetherfor entire signal, which is bidirectionaladvanceadvancecommand/136ZBT-control linesVRAM 1 ( ZBT)VRAM 2 ( ZBT)ZBT-CZBT-CVGA OutputZBT-Chsyncvsyncrgb/24Clock and Reset are global signalsswapswappedData DisplayshutdownreadyreadyPixel FillVisualization Component•Will be implemented on 6.111 labkit - Nexys board too limited•Read data from flash ROM•Visualizations: various combinations of position/altitude/velocity vs. time - 2D and 3D•All will support panning / zooming / rotation through a PS/2 mouseGPS Receiver (SiRF StarIII)RS232 InputTxRxRS232 OutputInitializerdata / 9SiRF Message Parserdata / 9availableData Log Encoder fix / 160writedata / 8eraseSerial Flash ROM OutputSerial Flash (Micron M25P16)Clock and Reset are global signalsSDISELMobile Data LoggerSerial Flash (Micron M25P16)Serial Flash ROM InputSELSDISDOavailabledata / 8Data Log Decoder SDOfix = {latitude / 32longitude / 32altitude / 32timestamp / 32velocity / 32}Fix Queuenextnextavailablefix / 129Rendering Managerrestartfix is as above, but w/o timestamp,an with extra bit indicating EOFfix / 129emptyreadIMPS/2 Decoderavailablelmr/3x/8y/8z/8ps/2 dataps/2 clkactive / 4command/128fix / 129availablecommand is a tristate busAltitude vs. timeVelocity vs. time2D Position2D Position + Altitude (3D)2D Position + Velocity (3D)2D TransformNull Transform3D Transformcommand/136Rectangle FillLine DrawText DrawVRAM Managerall inputs to advance are ANDed togetherfor entire signal, which is bidirectionaladvanceadvancecommand/136ZBT-control linesVRAM 1 ( ZBT)VRAM 2 ( ZBT)ZBT-CZBT-CVGA OutputZBT-Chsyncvsyncrgb/24Clock and Reset are global signalsswapswappedData DisplayshutdownreadyreadyPixel FillCommandsTRANS / 4DRAW / 4 FILL / 10 Data / 256Transform Commands:NOOPSet 2D Camera LimitsSet 3D Camera LimitsTransform 2Dx1Transform 2Dx2Transform 3Dx1Transform 3Dx2Draw Commands:NOOPDraw LineFill RectangleDraw TextDraw Text ContinueDraw PolygonFill Commands:NOOPStandard FillAlpha FillCommand FormatVertical / 10 Horizontal / 9 H / 1ZBT RAMWEAWEBWECWEDADR / 19DATA/ 36WEB / 6DataAddressWE0:1718:3501R / 6 G / 6•Command format consists of three control fields, plus data•Each control field controls a specific stage in transform•Commands may be broken into multiple subcommandsVRAM Addressing•512k x 36 ZBT RAM•Storing 1024x768 pixels - 768k locations•Use 18-bit pixels (6 bpc), store two pixels in each location•Aided by ZBT partial-write linesselectorsTRANS / 4DRAW / 4 FILL / 10 Data / 256Transform Commands:NOOPSet 2D Camera LimitsSet 3D Camera LimitsTransform 2Dx1Transform 2Dx2Transform 3Dx1Transform 3Dx2Draw Commands:NOOPDraw LineFill RectangleDraw TextDraw Text ContinueDraw PolygonFill Commands:NOOPStandard FillAlpha FillCommand FormatVertical / 10 Horizontal / 9 H / 1ZBT RAMWEAWEBWECWEDADR / 19DATA/ 36WEB / 6DataAddressWE0:1718:3501R / 6 G / 63D Transform MathR =cos(θz) −sin(θz) 0sin(θz) cos(θz) 00 0 1×1 0 00 cos(θx) −sin(θx)0 sin(θx) cos(θx)×cos(θy) 0 sin(θy)0 1 0−sin(θy) 0 cos(θy)M =R11R12R13TxR21R22R23TyR31R32R33Tz0 0 0 1O =OxOyOzPT= (P + O)F =PTxPTyPTz1× Mx = −eFzFxy = −eFzFyxyzPP + O(P + O) x R(P + O) x R + TCameraTimeline•November 17 - data logger and data retrieval finished•November 24 - Video RAM, pixel fill, line drawing, rectangle fill•December 1 - IMPS/2 Interface, rendering manager, text drawing, 2D and 3D transforms•December 8 - remaining visualization modules completedAdditional Functionality•Awareness of Earth’s curvature•Anti-aliased line drawing•Polygon


View Full Document

MIT 6 111 - Study Notes

Documents in this Course
Verilog

Verilog

21 pages

Video

Video

28 pages

Bass Hero

Bass Hero

17 pages

Deep 3D

Deep 3D

12 pages

SERPENT

SERPENT

8 pages

Vertex

Vertex

92 pages

Vertex

Vertex

4 pages

Snapshot

Snapshot

15 pages

Memories

Memories

42 pages

Deep3D

Deep3D

60 pages

Design

Design

2 pages

Frogger

Frogger

11 pages

SkiFree

SkiFree

81 pages

Vertex

Vertex

10 pages

EXPRESS

EXPRESS

2 pages

Labyrinth

Labyrinth

81 pages

Load more
Download Study Notes
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 Study Notes 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 Study Notes 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?