1 / 12

TPC Firmware on DCS

TPC Firmware on DCS. Torsten Alt, Kjetil Ullaland, Matthias Richter, Ketil Røed, Johan Alme. TPC Electronics meeting. CERN 13-14. Jan 2005. Overview. RCU 3 solution DCS RCU communication Changes proposed to suit the new challenge with configuring. Status. RCU 3 solution. Modules

nika
Download Presentation

TPC Firmware on DCS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TPC Firmware on DCS Torsten Alt, Kjetil Ullaland, Matthias Richter, Ketil Røed, Johan Alme TPC Electronics meeting. CERN 13-14. Jan 2005

  2. Overview • RCU 3 solution • DCS RCU communication • Changes proposed to suit the new challenge with configuring. • Status

  3. RCU 3 solution • Modules • Ethernet: • Provides access to the ethernet • TTCrx • Interface to the TTCrx Chip • Write/read registers over I2C • Maps all the TTCrx registers in a register file in the PLD • Decodes L2a/r messages. In case of a L2a message the trigger information is directly transferred over the RCU bus to the Data Assembler module. • FPGA Config • Configures the RCU-FPGA. • ADC readout • Monitors the voltages on the DCS • JTAG Master • Configures neighbour DCS cards.

  4. DCS-RCU Communication • The communication between linux (dcs-driver) and RCU modules is done by using messages. • A message is written to the memories in the DCS FPGA, and the DCS messagebuffer translates this into RCU-bus commands. • Results on the RCU bus is translated back to a message that the dcs-driver can interpret. • In the existing solution the same memories are used for configuration of the RCU FPGA.

  5. Proposed changes • TTCrx IF is moved to RCU. • Serial B Channel will be used for data transmission. • Configuring & status of TTCrx will still be on DCS FPGA using I2C interface. • Reason: • Remove the FPGA on the DCS board from the datapath. • Configuring of RCU FPGA is changed. • New data interface for shipping and receiving configuration data. • Reason: • Easier interface for programming both FPGA and Flash. • Faster • Less logic • Configuration tasks is mainly handled by the CPLD on the RCU. • The DCS Messagebuffer system and the RCU bus will not change.

  6. DCS-RCU Communication • Two bus modes: • Memory mapped mode. (normal) • Transport data interface • Used for transport of configuration data. • Directly controlled from linux.

  7. DCS-RCU Communication The different instances of the driver (divided by minor-number), maps to different locations on the RCU card

  8. Transport data interface • The transport data interface is used for transporting configuration data direct from linux. • 32-bit asynchronous bus. • Same physical bus lines as the RCU bus. • Between the RCU CPLD and the DCS card. • Control signal DCS_ctrl[7] is used for switching between Memory mapped bus mode and trasnport bus mode. • The CPLD then translates the data into a format understandable for the selectMap bus or the Flash communication. • One control signal (dcs_ctrl[6]) is used to select selectMap IF or Flash. • 6 control signals.

  9. Transport data interface (DCS-CPLD 32 bit data interface) (Configure_n) Note. If writing to or reading from flash, the first block of data is always the start address in the memory.

  10. Data Format – Transport data interface • SelectMap: • Data is pushed 32 bit at the time • Flash • Number of bytes • Address in Flash • Data

  11. Device driver • On the DCS, the transport data interface is controlled directly by the DCS driver. • The DCS driver is a device driver that is divided by minor number into different instances depending on use. • RCU bus driver • Virtex configuration driver • Complete interface to selectMap interface in CPLD, including controllines to choose correct bus mode • Makes it possible to configure the Virtex-II with a simple cat-command • Flash configuration drivers • Complete interface to flash interface in CPLD, including control lines to choose correct bus mode. • Makes it possible to write to a designated address in the flash memory on the RCU board with a simple cat-command

  12. Status • DCS messagebuffer is finished (T Alt). • Prototype device driver Virtex_driver is finished. • Ongoing work: • ADC interfaces • TTCrx control module • Prototype of Flash device driver • Configuration firmware

More Related