Reliable Data Storage using Reed Solomon Code Supervised by: Isaschar (Zigi) Walter Performed by: Ilan Rosenfeld, Moshe Karl Spring 2004 Part A Final Presentation.

Slides:



Advertisements
Similar presentations
Computer Architecture
Advertisements

System Integration and Performance
EXTERNAL COMMUNICATIONS DESIGNING AN EXTERNAL 3 BYTE INTERFACE Mark Neil - Microprocessor Course 1 External Memory & I/O.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir.
Internal Logic Analyzer Final presentation-part B
Internal Logic Analyzer Final presentation-part A
FIU Chapter 7: Input/Output Jerome Crooks Panyawat Chiamprasert
Super Fast Camera System Performed by: Tokman Niv Levenbroun Guy Supervised by: Leonid Boudniak.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
Conversion Between Video Compression Protocols Performed by: Dmitry Sezganov, Vitaly Spector Instructor: Stas Lapchev, Artyom Borzin Cooperated with:
1 Matrix Multiplication on SOPC Project instructor: Ina Rivkin Students: Shai Amara Shuki Gulzari Project duration: one semester.
© 2004 Xilinx, Inc. All Rights Reserved Implemented by : Alon Ben Shalom Yoni Landau Project supervised by: Mony Orbach High speed digital systems laboratory.
NETWORK ON CHIP ROUTER Students : Itzik Ben - shushan Jonathan Silber Instructor : Isaschar Walter Final presentation part B Spring 2006.
Simulation Interface Final Presentation Guy Zur Eithan Nadir Instructor : Igal Kogan.
Asynchronous Pipelined Ring Interconnection for SoC Final Presentation One semester project, Spring 2005 Supervisor: Nitzan Miron Students: Ziv Zeev Shwaitser.
Students: Shai Amara Shuki Gulzari Project instructor: Ina Rivkin Matrix Multiplication on SOPC.
Parallel JPEG2000 Compression System Performed by: Dmitry Sezganov, Vitaly Spector Instructor: Stas Lapchev, Artyom Borzin.
Double buffer SDRAM Memory Controller Presented by: Yael Dresner Andre Steiner Instructed by: Michael Levilov Project Number: D0713.
טכניון – מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Final A Presentation Students: Nir Sheffi Evgeny Bogokovsky Instructor: Isaschar Walter Winter 2004.
Reliable Storage using Reed- Solomon coding Winter 2004/2005 Part B Final Presentation Ilan Rosenfeld & Moshe Karl Instructor: Isaschar Walter.
Performed by : Rivka Cohen and Sharon Solomon Instructor : Walter Isaschar המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון.
Configurable System-on-Chip: Xilinx EDK
Workload distribution in satellites Part A Final Presentation Performed by :Grossman Vadim Maslovksy Eugene Instructor:Rivkin Inna Spring 2004.
Workload distribution in satellites Final Presentation Performed by :Grossman Vadim Maslovksy Eugene Instructor:Rivkin Inna Spring 2004.
Students:Gilad Goldman Lior Kamran Supervisor:Mony Orbach Mid-Semester Presentation Spring 2005 Network Sniffer.
טכניון – מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Midterm Presentation Students: Nir Sheffi Evgeny Bogokovsky Instructor: Isaschar Walter Winter 2004.
1 Performed by : Rivka Cohen and Sharon Solomon Instructor : Walter Isaschar המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון.
Reliable Data Storage using Reed Solomon Code Supervised by: Isaschar (Zigi) Walter Performed by: Ilan Rosenfeld, Moshe Karl Spring 2004 Midterm Presentation.
Final Presentation Neural Network Implementation On FPGA Supervisor: Chen Koren Maria Nemets Maxim Zavodchik
HS/DSL Project Yael GrossmanArik Krantz Implementation and Synthesis of a 3-Port PCI- Express Switch Supervisor: Mony Orbach.
Interface of DSP to Peripherals of PC Spring 2002 Supervisor: Broodney, Hen | Presenting: Yair Tshop Michael Behar בס " ד.
Reliable Data Storage using Reed Solomon Code Supervised by: Isaschar (Zigi) Walter Performed by: Ilan Rosenfeld, Moshe Karl Spring 2004 Characterization.
Performed by : Rivka Cohen and Sharon Solomon Instructor : Walter Isaschar המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון.
Super Fast Camera System Performed by: Tokman Niv Levenbroun Guy Supervised by: Leonid Boudniak.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
Technion Digital Lab Project Performance evaluation of Virtex-II-Pro embedded solution of Xilinx Students: Tsimerman Igor Firdman Leonid Firdman.
Lecture 7 Lecture 7: Hardware/Software Systems on the XUP Board ECE 412: Microcomputer Laboratory.
INPUT-OUTPUT ORGANIZATION
Module I Overview of Computer Architecture and Organization.
INPUT/OUTPUT ARCHITECTURE By Truc Truong. Input Devices Keyboard Keyboard Mouse Mouse Scanner Scanner CD-Rom CD-Rom Game Controller Game Controller.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
CS 342 – Operating Systems Spring 2003 © Ibrahim Korpeoglu Bilkent University1 Input/Output CS 342 – Operating Systems Ibrahim Korpeoglu Bilkent University.
EEE440 Computer Architecture
Part A Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
LZRW3 Decompressor dual semester project Part A Mid Presentation Students: Peleg Rosen Tal Czeizler Advisors: Moshe Porian Netanel Yamin
ECEG-3202 Computer Architecture and Organization Chapter 3 Top Level View of Computer Function and Interconnection.
Final Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
Final Presentation DigiSat Reliable Computer – Multiprocessor Control System, Part B. Niv Best, Shai Israeli Instructor: Oren Kerem, (Isaschar Walter)
L/O/G/O Input Output Chapter 4 CS.216 Computer Architecture and Organization.
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
Chapter 5 Input/Output 5.1 Principles of I/O hardware
Chapter 13 – I/O Systems (Pgs ). Devices  Two conflicting properties A. Growing uniformity in interfaces (both h/w and s/w): e.g., USB, TWAIN.
Unit 1 Lecture 4.
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
IT3002 Computer Architecture
DDRIII BASED GENERAL PURPOSE FIFO ON VIRTEX-6 FPGA ML605 BOARD PART B PRESENTATION STUDENTS: OLEG KORENEV EUGENE REZNIK SUPERVISOR: ROLF HILGENDORF 1 Semester:
Chapter 3 System Buses.  Hardwired systems are inflexible  General purpose hardware can do different tasks, given correct control signals  Instead.
GBT protocol implementation on Xilinx FPGAs Csaba SOOS PH-ESE-BE-OT.
Compute Node Tutorial(2) Agenda Introduce to RocketIO How to build a optical link connection Backplane and cross link communications How to.
Status and Plans for Xilinx Development
Spring 08-Winter 09 semester Satellite Inner communication – SpaceWire & CAN Bus By: Michael Tsitrin, Asaf Modelevsky Instructor: Ina Ravkin הטכניון -
DIRECT MEMORY ACCESS and Computer Buses
1 Input-Output Organization Computer Organization Computer Architectures Lab Peripheral Devices Input-Output Interface Asynchronous Data Transfer Modes.
Presentation transcript:

Reliable Data Storage using Reed Solomon Code Supervised by: Isaschar (Zigi) Walter Performed by: Ilan Rosenfeld, Moshe Karl Spring 2004 Part A Final Presentation

Problem: Cosmic radiation in space causes bit-flips, and therefore valuable information could be lost. Solution: All data stored will first be encoded via a Reed Solomon Encoder. A Reed Solomon Decoder will be used when data retrieval is required.

Reed Solomon Encoder Reed Solomon Decoder Storage Device Hi res Hi freq. input data (possibly) corrupted data (hopefully) corrected data Basic Project Function

How will we implement? RocketIO Link “Storage” Board Memory “Master” Board RS Encoder RS Decoder CPU resources will be used at a minimum Satellite Computer & Logic Satellite Data Storage

First Semester Goals Studying the system-on-chip design process. Studying the EDK environment. Studying the blocks that build our system: –PowerPC –Reed Solomon Encoder/Decoder. –PLB IPIF and bus transaction protocol. –RocketIO Implementing the Reed Solomon cores as slaves on the bus (CPU still very involved in the flow). Sending a packet through RocketIO Reference Design

PLB PowerPC RS Decoder RS Encoder PLB2OPB Bridge OPB UART Hyperterminal on DIGLAB PC IPIF FIFO IPIF First Semester Goal Arch.

A Few Numbers… PLB Frequency is 100 MHz The Reed Solomon data width is 8-bit. Thus, if we could theoretically perform an 8-bit write each clock cycle, our basic architecture would reach a throughput of 0.8 Gbps.

System Blocks

IPIF The IPIF is (as its initials suggest) an interface between the bus and the IP. It takes care of the transaction protocols on the bus and simplifies access to the IP. It also enables special features such as S/W Resetting, User Logic address ranges, interrupts, Bursting, DMA support and more.

IPIF – continued

Bus Transactions Bursting enables us to transfer data with a higher throughput!

Reed Solomon cores When creating the cores using Xilinx CoreGen, the following parameters are needed: –k: number of symbols per data block (to be encoded) –n: total number of output symbols (original data + check symbols) –s: number of bits per symbol The Reed Solomon code can detect n-k symbol errors and correct (n-k)/2.

We have chosen k=239, n=255, s=8, which are similar to G. 709 standard. RS cores

RS Cores – Detailed

FIFO We have used several different FIFOs in our design, all taken from Xilinx CoreGen. We have made three FIFO types for our purposes, the “plb_in_fifo”, “plb_out_fifo” and the “plb_fifo”. For this we have chosen a 1024x8bit FIFO.

PLB OPB UART Encoding data flow Writing to encoder is done via IPIF. When there is no write request the encoder is in bypass mode. Data from the encoder is directly connected to a FIFO. The FIFO is read via IPIF to the PowerPC and sent through UART to PC. PowerPC RS Decoder RS Encoder Hyperterminal on DIGLAB PC IPIF FIFO IPIF PLB2OPB Bridge

Decoding data flow The data is put through IPIF to a FIFO at the decoder inputs. Using a block called FIFO-Helper, data is sent every clock cycle to the decoder. The decoder also has a FIFO at its outputs where data is taken from via IPIF for PowerPC and sent through UART to PC. PLB PowerPC RS Decoder RS Encoder PLB2OPB Bridge OPB UART Hyperterminal on DIGLAB PC IPIF FIFO IPIF

RocketIO RocketIO can transmit and receive serial data at rates ranging from 620 Mbps to Gbps. At these rates, in order to assure sampling at correct times, each byte is coded into a 10 bit sequence with enough edges. The 10 bit scheme allows for special “K- Characters”, which are used for various tasks, including packet start and end signaling (SOP, EOP) and byte-synchronization (Comma).

DCR RocketIO Ref. Design PowerPC PLB RS Decoder RS Encoder PLB2OPB Bridge OPB UART Hyperterminal on DIGLAB PC IPIF FIFO IPIF Packet Processing Engine Data BRAM RocketIO Transceiver

Mindspeed Physical Media Attachment Xilinx Coding Sublayer RocketIO Transceiver Diagram loopback 8B/10B Encode FIFO TXDATA 16 bit Serializer Transmit Buffer TXN TXP 8B/10B Decode Elastic Buffer RXDATA 16 bit Deserializer Comma Detect Receive Buffer RXN RXP We will use one of the following: 125 MHz x 16 bit x 10b/8b = 2.5 Gbps MHz x 16 bit x 10b/8b = Gbps

RocketIO Ref. Design The reference design has several disadvantages. Packets must be prepared (in other words, encoded) and stored in memory first, and only then sent. There is too much CPU resource waste. PowerPC RS Encoder PowerPC Data BRAM Packet Processing Engine RocketIO Transceiver

Original Second Semester Goals Building a CPU offload unit that will be a master on the PLB, perhaps using the DMA capability of the IPIF. Using another development board to simulate a storage device. Performing fast and reliable data transfers between the two boards using the RocketIO ports.

Original Second Semester Goal System Diagram PLB Rocket I/O SDRAM Memory Controller PowerPC RS Decoder RS Encoder Second Development Board (simulating storage device) CPU offload unit PLB2OPB Bridge OPB UART, etc.

OPB Our New “Master” Board Architecture PLB PowerPC PLB2OPB Bridge UART Hyperterminal on DIGLAB PC RS Encoding Unit IPIF Outgoing Packet Delivery Unit Outgoing Memory RocketIO Transceiver RS Decoding Unit IPIF Incoming Packet Receiving Unit Incoming Memory

Advantages Of This Architecture The CPU responsibility is only to give simple read/write orders. The rest of the flow is done in hardware. There is no need for the “CPU offload unit”. The unit we will create can be treated as a black box, and be added multiple times for multiple storage devices in a modular fashion. A very similar box would be put in the “storage” board.

“Storage” Board Diagram OPB PLB PowerPC PLB2OPB Bridge UART Hyperterminal on DIGLAB PC IPIF Outgoing Packet Delivery Unit “Storage” Memory RocketIO Transceiver IPIF Incoming Packet Receiving Unit Large SDRAM

Second Semester Schedule Building the outgoing delivery unit and the incoming receiving unit – 6 weeks. Interfacing the units to PLB – 1 week. Testing the architecture on “Master” board with RocketIO loopback – 2 weeks. Creating similar units for “Storage” board – 2 weeks. Testing architecture on “Storage” board with RocketIO loopback – 1 week. Integration of the two boards and final debugging – 2 weeks.

Demonstration Through the UART interface, we will demonstrate the following: –Encoding of 239 bytes into a 255-byte Block. –Destroying several symbols according to a randomization seed from the user. –Decoding and correction of the original block.

Thank you