Development of a Flexible Pulse Programmer for MRI Using a Commercial Digital Signal Processor Board

Development of a Flexible Pulse Programmer for MRI Using a Commercial Digital Signal Processor Board
复制标题

使用商用数字信号处理器板开发用于 MRI 的灵活脉冲编程器

DOI:
10.1002/9783527611843.ch64
复制
发表时间:
2007
期刊:
Teratology
影响因子:
--
通讯作者:
T. Haishi
T. Haishi
中科院分区:
--
文献类型:
--
作者:
K. Kose;T. Haishi

文献摘要

被引文献

相似文献

前言最近复杂的快速核磁共振成像序列需要高性能的脉冲编程器以及高速梯度和射频系统。然而,构建这样的脉冲编程器并不容易,因为包括三个通道梯度幅度在内的许多参数必须以高时间分辨率控制。MRI脉冲编程器的一种方法是使用由时钟计数器、地址计数器、数字比较器和字存储器组成的硬件逻辑电路。然而,这种脉冲编程器的逻辑电路变得非常复杂,布线呈爆炸性增加。将某些计算机系统用于核磁共振脉冲编程器是一种众所周知的解决方案。但PC或其他普通板式计算机不能用于生成准确的时序,因为这些计算机具有系统定时器的系统中断和DRAM设备的刷新周期。然而,大多数数字信号处理器(DSP)板系统都是为了给出可用于核磁共振脉冲序列的精确时间序列。因此,我们使用商用的DSP板开发了一种灵活的MRI脉冲编程器。DSP板使用的硬件系统是DSP6031(日本的MTI仪器公司),它有一个32位的浮点DSP芯片(美国德州仪器公司的TMS320C31),运行在40 MHz的时钟频率和50 ns的指令周期。该板具有四个12位ADC、四个12位DAC和一个8位数字I/O端口。所有这些都组装在一个全尺寸的PC-AT扩展卡上。该DSP板可以使用32位I/O总线连接到其他扩展板(全尺寸PC-AT卡)。我们对32位数字输出使用了一张扩展卡。这两块与DSPI/O总线连接的PC-AT全尺寸卡安装在运行MS-DOS或Windows95的PC上。DSP具有内部32位定时器,其时钟与DSP时钟同步。由于定时器可以产生中断信号给DSP操作(50 ns周期),并且定时器的最小时钟周期为100 ns,所以DSP可以产生100 ns时间分辨率的脉冲。脉冲编程器的编程图1显示了为脉冲编程器开发的程序的概述。这一计划由三个主要部分组成。第一个组件是用文本编辑器编写的脉冲序列时间表。第二部分是产生脉冲序列的DSP程序。程序中的关键操作是定时器中断操作:首先将延迟时间加载到定时器寄存器中,然后在延迟时间之后发生定时器中断,并根据时间表中的事件数据输出事件。此DSP程序是在MS-DOS 6.2版下运行的主机PC上使用交叉C编译器和交叉汇编程序开发的。第三个组件是程序,用于将时间表转换为用于DSP的定时和事件数据,并将DSP代码和定时数据下载到DSP存储器。梯度波形射频控制线
INTRODUCTION Recent sophisticated fast NMR imaging sequences require a high performance pulse programmer as well as a high speed gradient and RF system. However, to construct such a pulse programmer is not easy because many parameters including three channel gradient amplitudes must be controlled at a high time resolution. One approach to the MRI pulse programmer is to use a hardware logic circuit consisting of a clock counter, address counter, digital comparator, and word memory. The logic circuit for such pulse programmer, however, becomes very complicated and the wiring increases explosively. Use of some computer system for the NMR pulse programmer is a well known solution. But PC or other usual board computers cannot be used to generate exact time sequences because these computers have system interruptions by the system timers and refresh cycles for DRAM devices. Most of digital signal processor (DSP) board systems are, however, made to give exact time sequences which can be used for NMR pulse sequences. We have thus developed a flexible pulse programmer for MRI using a commercial DSP board. HARDWARE SYSTEM The DSP board used is DSP6031 (mtt Instruments Japan) which has a 32-bit floating point DSP chip (TMS320C31, Texas Instruments) running at the 40 MHz clock frequency with the 50 ns instruction cycle. This board has four 12-bit ADC, four 12-bit DAC, and an 8-bit digital I/O port. All of them are assembled on a full size PC-AT extension card. This DSP board can be connected to other extension boards (full size PC-AT cards) using a 32-bit I/O bus. We used one extension card for 32-bit digital outputs. These two PC-AT full size cards connected with the DSP I/O bus were installed to a PC running under MS-DOS or Windows95. The DSP has the internal 32-bit timer of which clock is synchronized with the DSP clock. Because the timer can generate interrupt signals to the DSP operation (50 ns cycle) and the minimum clock cycle of the timer is 100 ns, the DSP can generate pulses at 100 ns time resolution. PROGRAM FOR THE PULSE PROGRAMMER Figure 1 shows the overview of the program developed for the pulse programmer. This program consists of three major components. The first component is the time table of the pulse sequence written with a text editor. The second component is the DSP program to generate pulse sequences. The key operation in the program is the timer interrupt operation: at first, the delay time is loaded to the timer register, then the interruption from the timer takes place after the delay time, and the event is output according to the event data in the time table. This DSP program was developed using the cross C compiler and the cross assembler for the DSP chip on the host PC running under MS-DOS version 6.2. The third component is the program to convert the time table to the timing and event data used for the DSP and to download the DSP code and timing data to the DSP memory. gradient waveforms RF control lines