Damper board (redux) SHARC overview Bill A. May 17, 2004.

Slides:



Advertisements
Similar presentations
Managing Cisco IOS Software. Overview The router boot sequence Locating IOS software The configuration register Recovering Passwords Backing Up the Cisco.
Advertisements

MC68HC11 System Overview. System block diagram (A8 version)
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
RUAG Aerospace 11 Using SpaceWire as EGSE Interface Anders Petersén, Torbjörn Hult RUAG Aerospace Sweden AB (Saab Space) International SpaceWire Conference.
Introduction to Information Technology: Your Digital World © 2013 The McGraw-Hill Companies, Inc. All rights reserved.Using Information Technology, 10e©
IO Controller Module Arbitrates IO from the CCP Physically separable from CCP –Can be used as independent data logger or used in future projects. Implemented.
Computing Components 01/26/11. Announcements & Reminders Programs 1 due Friday, 9/2/11 What is my late policy? Proxy Codes for Labs  You should be able.
Team Monte Cristo Joseph Carrafa Sharon Clark Scott Hassett Alex Mason The Deep Fried Game Station.
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ input/output and clock inputs Sequence of control signal combinations.
GCSE Computing - The CPU
Chapter 9 Managing a Cisco Internetwork Cisco Router Components Bootstrap - Brings up the router during initialization POST - Checks basic functionality;
Lecture 7 Lecture 7: Hardware/Software Systems on the XUP Board ECE 412: Microcomputer Laboratory.
Chapter 17 Microprocessor Fundamentals William Kleitz Digital Electronics with VHDL, Quartus® II Version Copyright ©2006 by Pearson Education, Inc. Upper.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Copyright ©: Nahrstedt, Angrave, Abdelzaher
Microcomputer & Interfacing Lecture 2
Micro controllers A self-contained system in which a processor, support, memory, and input/output (I/O) are all contained in a single package.
Shell and Flashing Images Commands and upgrades. RS-232 Driver chip – ST3232C Driver chip is ST3232C Provides electrical interface between UART port and.
Sybex ICND2/CCNA R/S Chapter 16: Cisco IOS Instructor & Todd Lammle.
Atmega32 Architectural Overview
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
Computer Organization
3/7/05A. Semenov Batch-by-Batch Intensity Monitor 1 Two-Channel Batch by Batch Intensity Monitor for Main Injector BBI.
How Hardware and Software Work Together
MICE III 68000/20/30 MICETEK International Inc. CPU MICEIII MICEView Examples Contents Part 1: An introduction to the MC68000,MC68020 and Part.
Computer Processing of Data
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
NET+OS 6 BSP How and why it was restructured Changes to memory map New features How to port to custom hardware.
Interrupts and DMA CSCI The Role of the Operating System in Performing I/O Two main jobs of a computer are: –Processing –Performing I/O manage and.
1. Introduction 2. Methods for I/O Operations 3. Buses 4. Liquid Crystal Displays 5. Other Types of Displays 6. Graphics Adapters 7. Optical Discs 10/01/20151Input/Output.
Cisco S2 C4 Router Components. Configure a Router You can configure a router from –from the console terminal (a computer connected to the router –through.
I/O Example: Disk Drives To access data: — seek: position head over the proper track (8 to 20 ms. avg.) — rotational latency: wait for desired sector (.5.
GBT Interface Card for a Linux Computer Carson Teale 1.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
PROCStar III Performance Charactarization Instructor : Ina Rivkin Performed by: Idan Steinberg Evgeni Riaboy Semestrial Project Winter 2010.
RL78 Code & Dataflash.
Computer Organization & Assembly Language © by DR. M. Amer.
1 Chapter 34 Internet Applications (Telnet, FTP).
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
Brian Hixenbaugh Network Managment. My Home Network.
12/8/20151 Operating Systems Design (CS 423) Elsa L Gunter 2112 SC, UIUC Based on slides by Roy Campbell, Sam King,
Electronic Analog Computer Dr. Amin Danial Asham by.
Computer Hardware – System Unit
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 5A Transforming Data Into Information.
THE MICROPROCESSOR A microprocessor is a single chip of silicon that performs all of the essential functions of a computer central processor unit (CPU)
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
بسم الله الرحمن الرحيم MEMORY AND I/O.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
SEPTEMBER 8, 2015 Computer Hardware 1-1. HARDWARE TERMS CPU — Central Processing Unit RAM — Random-Access Memory  “random-access” means the CPU can read.
CHAPTER 3 Router CLI Command Line Interface. Router User Interface User and privileged modes User mode --Typical tasks include those that check the router.
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ read/write and clock inputs Sequence of control signal combinations.
CIT 140: Introduction to ITSlide #1 CSC 140: Introduction to IT Operating Systems.
Chapter 3 Getting Started. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. Objectives To give an overview of the structure of a contemporary.
GCSE Computing - The CPU
Operating System Overview
Instructor & Todd Lammle
Atmega32 Architectural Overview
Chapter 2: System Structures
Chapter 10: Device Discovery, Management, and Maintenance
CS703 - Advanced Operating Systems
Introduction to Microprocessors and Microcontrollers
Interfacing Memory Interfacing.
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
Computers: Hardware and Software
CS703 - Advanced Operating Systems
Lecture9: Embedded Network Operating System: cisco IOS
GCSE Computing - The CPU
Internet Applications (Telnet, FTP)
Lecture9: Embedded Network Operating System: cisco IOS
Presentation transcript:

Damper board (redux) SHARC overview Bill A. May 17, 2004

What is a SHARC? Analog Devices 21065L processor Typically used for (audio) digital signal processing 64KB (!) RAM, 32-bit floating point (extended 40-bit too), SDRAM interface, serial ports, DMA, 24-bit addr, 32-bit data external busses; we run at 50MHz In-circuit emulator for d/l, single-step, etc. Real men (e.g. Brian Chase’s group) code in assembly; I was lazy and used C

SHARC’s role on damper board Initialize Stratix from FRAM on power-up Interface board to world via TCP/IP –Includes remote firmware/software update Read/write Stratix “bus” registers, so that damper processing can be controlled and monitored via network Read FIFOs (written by Stratix), to allow high-volume DAQ during damper operation

Telnet to port 128 (or to stripped- down version on port 100); read or write registers in Stratix chip

Reading/writing Stratix “bus” registers Simple text command line interface allows network client to read and write values –RD addr –WR addr value SHARC decodes commands, jiggles serial line to Stratix, watches Stratix jiggle back, writes out answer on TCP socket ACnet OAC (Dennis) essentially logs in and types these same commands There is also a binary multi-word read protocol, for somewhat improved speed

Python scripts Updating firmware, software, network numbers from nova, etc. Converting SHARC compiler output

Remote firmware update rewrite_stratix.py sends Quartus.TTF file into FRAM …/sharc/scripts/*.py in CVS

Remote firmware update rewrite_stratix.py sends Quartus.TTF file into FRAM …/sharc/scripts/*.py in CVS With only minor coercion, Quartus outputs.TTF file automatically upon compilation Bill F uses same python script from windoze, no problem

Remote SHARC software update: chicken=1 SHARC compiler excretes …/sharc/damper_control/Debug/damper_control.ldr run parseldr.py –reads damper_control.ldr –hacks boot-loader data for subset of program memory that executes from external SDRAM (recall that internal SRAM is 64KB) –writes boot_b.ldr rewrite_b.py writes boot_b.ldr to FRAM python reboot.py damprN 1 runs prog “b” power cycle (or watchdog) runs stored “a”

Remote SHARC software update: chicken=0 Copy boot_b.ldr to boot_a.ldr rewrite_a.py writes boot_a.ldr to FRAM python reboot.py damprN runs prog “a” power cycle (or watchdog) runs prog “a” if prog “a” is screwed up, you have to plug in the in-circuit emulator to fix it

Rebooting reboot.py simply does ‘write 0 1’ note ‘write’ not ‘wr’ –‘write’ and ‘read’ affect SHARC address space –‘wr’ and ‘rd’ affect Stratix ‘bus’ address space bit 0 of address 0 initiates a CPU reset to boot prog ‘b’, reboot.py first does a ‘write 8100 deadbeef’ boot loader has been hacked to set address bit 16 if this value is detected at 8100 boots from ‘secondary’ bank of FRAM

FRAM address map 0x = SHARC program “A” (0.4MB) 0x = network ID numbers (19 bytes) 0x = SHARC program “B” (0.4MB) 0x = Stratix code (1MB) FRAM base addr = 0x in SHARC memory map (“external” block 1)

Updating network numbers (DANGER!) rewrite_id.py

Rest of outline SHARC & connected components Bootstrapping hijinks FRAM contents Compiling & updating the damper_control SHARC program SHARC source code tree Main.c App_v0.c Where to find SHARC info

Features needed soon Ability to lock out the OAC from connecting during FRAM updates. –Maybe “locked” mode only allows connections from one particular IP address, specified on command line. Fake fast time plots. –To FTP a specific Stratix “bus” address at 720 (?) Hz, this is probably easy to implement. –Need to know when to start/stop, whether to repeat, when to send data out, etc. –Maybe have a list of up to 10 (?) bus addresses for which FTP is actively gathering data, under OAC’s control.

Worries Too much home-made code to maintain? –Maybe it’s not so bad? Network throughput of uIP package is limited by lack of pipelining –advertised TCP “window” only 1 packet deep –consider upgrading to Adam Dunkels’s other (more performant) package, lwIP? Would be nice to be able to use a free compiler, e.g. gcc. –SHARC compiler licensing is a pain.

Hardware worries/wishes If FRAM gets corrupted, need APEX-ICE, VisualDSP++, etc. to re-load image. Ouch. Simple RS232 to SHARC (& Stratix?) would speed up initial check-out. Also easier to set network ID numbers that way. Test header for connecting Stratix to HP logic analyzer, for tough debugging. If MAX chip had a few lines to the Stratix and a few SHARC data lines, it could do more interesting things. MAX chip plays a special role, as it is non-volatile. As many signals as possible (except ultra-high-speed) should go through an FPGA, for debugging, re-gluing, etc. Memory-mapped Stratix access on SHARC external bus?