Download presentation
Presentation is loading. Please wait.
Published byStewart Moody Modified over 9 years ago
1
Stanford Linear Accelerator Center PowerPC and VXI Kinetic Systems V151 Embedded PowerPC Slot-0 Controller
2
Kristi LuchiniEPICS Collaboration - Nov 14/17, 2000 - Oak ridge2 Objective Port the EPICS low-level RF code to another VXI slot-0 controller vxWorks 5.3.1 and EPICS R3.13.2 Current cpu, niCpu030 has been discontinued Crate profile – SLAC VXI register based modules and AB VME Scanner Why choose the PowerPC Pressure at SLAC to replace niCpu030 Intel slot-0 controllers (NI) did not have favorable reviews Consistency; one ppc architecture for VMEbus and VXIbus projects at SLAC byte orientation (big endian) is the same as the 68K architecture of the niCpu030
3
Kristi LuchiniEPICS Collaboration - Nov 14/17, 2000 - Oak ridge3 Hardware Issues Elma crate power-on hang SYSRST not asserted on reboot D8/D16 IACK Cycle SLAC VXI modules and the VXI spec Interrupt controller uses a mechanism for autovectoring VME interrupts
4
Kristi LuchiniEPICS Collaboration - Nov 14/17, 2000 - Oak ridge4 Software Issues Learning about the VXIbus Standard as well the SLAC VXI register-based modules. Interrupts 1 Interrupt Level instead of 7 as with 68k Architectory Missing functions intVecGet Unsolicited Interrupt Handlers – different naming standard VXI mode vs. VME mode Lack of atomic Read-Modify-Write VXI Library Incorrect and/or buggy library - Resman crashes Missing basic functions – GetMyLA,SetMODID VXI library initialization A32 Space – device window configuration EPICS_VXI_A32_BASE 0x20000000 0x9000000 EPICS_VXI_A32_SIZE 0x00100000 0x1000000
5
Kristi LuchiniEPICS Collaboration - Nov 14/17, 2000 - Oak ridge5 Code Changes EPICS Code changed drvEpvxi.c,devLib.c,veclist.c – table of unsolicited interrupts Crate a dummy isr static void *vmeArgTbl[ 7] ; devInterruptConnectVXI( level,isr,parm ) dummyISR(controller,statusId,level) { myVmeIsr( vmeArgTbl( vmeArgTbl[level-1] ) ) } Bsp kernel changes Adding functionality – sysBusTas,intVecGet (Andrew Johnson) VXI vs VME mode – VXI/VME fighting for control of the bus sysUniverseIntHandler – VXI vs VME mode sysVme.c - KSC method of taking control of VME interrupt autovectoring t;;
6
Kristi LuchiniEPICS Collaboration - Nov 14/17, 2000 - Oak ridge6 Vector Table 0 …... 11 … 254 255 Handler Argument Next Universe VME Interrupt kscIntHandler sysUniverseIntHandler vxiBaseIsr PPC External Interrupt Vector 0x500
7
Kristi LuchiniEPICS Collaboration - Nov 14/17, 2000 - Oak ridge7 VXI Vector Table LevelISR 1DefaultVXIintHandler 2 3 4 5 6 7
8
Kristi LuchiniEPICS Collaboration Mtg. - Nov 14-16,2000 Oak Ridge8 Conclusions Prefer a BSP supported by the OS Ask for VXI library code Awaiting SLAC VXI board modification to recognize D8 IACK cycle
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.