Fec accelerator based on intel vran dedicated accelerator acc100 (16 pages)
Summary of Contents for ADLINK Technology ACL-8316/12
Page 1
ACL-8316/12 ACL-8316/12 16/12-bit High Performance DAS Card with 1K FIFO...
Page 2
Trademarks ACL-8316/12 is registered trademarks of ADLink Technology Inc.. IBM PC is a registered trademark of International Business Machines Corporation. Intel is a registered trademark of Intel Corporation. Other...
Page 7
7.4.2 DA Channel 2 Calibration ........75 Appendix A I/O Port Address Map ..... 76 Appendix B Low-Level Programming....77 Product Warranty/Service........80 iv • Contents...
How to Use This Guide This manual is designed to help you use the ACL-8316/12. The manual describes how to modify various settings on the ACL- 8316/12 card to meet your requirements. It is divided into seven chapters: • Chapter 1, "Introduction," gives an overview of the product features, applications, and specifications.
Introduction The ACL-8316/12 series DAS cards are high resolution and high performance, data acquisition card based on the 16-bit PC/ISA Bus architecture. Both ACL-8316 and ACL-8312 share a common architecture and core features making each card is ideal for data logging and signal analysis applications.
1.1 Features The ACL-8316/12 high performance and high resolution Data Acquisition Card provides the following advanced features: • 16-bit PC/ISA Bus • 16-bit or 12-bit analog input resolution • On-board A/D FIFO memory for 1K • Auto-scanning channel selection •...
Installation This chapter describes how to install the ACL-8316/12. At first, the contents in the package and unpacking information that you should care about are described. The jumpers and switches setting for the ACL-8316/12's base address, analog input channel configuration, interrupt IRQ level, analog output configuration are also specified.
IC's to make sure that they are properly seated. Do this only with the module place on a firm flat surface. Note : DO NOT APPLY POWER TO THE CARD IF IT HAS BEEN DAMAGED. You are now ready to install your ACL-8316/12. 8 • Installation...
2.5 Base Address Setting The ACL-8316/12 requires 16 consecutive address locations in the I/O address space. The base address of the ACL-8316/12 is restricted by the following conditions. 1. The base address must be within the range Hex 200 to Hex 3FF.
Page 20
SW1 : Base Address = Hex 220 A( 8 7 5 4 ) Figure 2.2 Default Base Address Setting I/O port Address(Hex) 200-20F 210-21F 220-22F (default) 230-23F 300-30F 3F0-3FF A0, ..., A8 is corresponding to PC Bus address lines Table 2.2 Possible Base Address Combinations Installation •...
How to define the base address for the ACL-8316/12 ? The DIP1 to DIP5 in the switch SW1 are one to one corresponding to the PC bus address line A8 to A4. A9 is always set as 1 and A0~A3 are always 0.
2.7 Analog Output Channel Setting 2.7.1 Channel Output Range Setting The ACL-8316/12‘s analog outputs are generated by a very powerful D/A converter B.B. DAC2813. It can be configured either bipolar (+10V ~ -10V) or unipolar (0V ~ 10V) output. The jumper JP5 and JP6 are used to set D/A CH1 and D/A CH2 individually.
Figure 2.6 D/A Output Mode Setting 2.8 DMA Channel Setting The A/D data transfer of ACL-8316/12 is designed with DMA transfer capability. The setting of DMA channel 5, 6 or 7 is controlled by the jumpers JP1 and JP2. The possible settings are illustrated in the Figure 2.7 below.
Figure 2.7 DMA Channel Setting IRQ Level Setting The ACL-8316/12 can connect to any one of the interrupt lines of the PC I/O channel. The interrupt line is selected by the jumper JP3. If you wish to use the interrupt capability of ACL-8316/12, you must select an interrupt level and place the jumper in the appropriate position to enable the particular interrupt line.
Figure 2.8 IRQ Level Setting 2.10 Clock Source Setting The 8254 programmable interval timer is used in the ACL- 8316/12. It provides 3 independent channels of 16-bit programmable down counters. The input of counter 2 is connected to a precision 2MHz oscillator for internal pacer. The input of counter 1 is cascaded from the output of counter 2.
Signal Connections This chapter describes the connector of the ACL-8316/12, also the signal connection between the ACL-8316/12 and external devices, such as daughter boards or other devices. 3.1 Connectors Pin Assignment The ACL-8316/12 comes equipped with two 20-pin insulation displacement connectors - CN1 and CN2 and one 37-pin D-type connector - CN3.
Page 27
• • CN 1: Digital Signal Output (DO 0 - 15 ) DO 0 DO 1 DO 2 DO 3 DO 4 DO 5 DO 6 DO 7 DO 8 DO 9 11 12 DO 10 DO 11 DO 12 13 14 DO 13 15 16...
A/D conversion, it is quite important to understand the signal source type and how to choose the analog input modes : signal-ended and differential. The ACL-8316/12 offers jumpers to select 16 single-ended or 8 different analog inputs. Single-ended Mode : The single-ended mode has only one input relative to ground and it suitable for connecting with the floating signal source.
Page 30
Input Multipexer Opertional Amplifier Floating Signal To A/D Converter Source AGND n = 0, ..., 15 Figure 3.4 Floating source and single-ended Differential input mode The differential input mode provides two inputs that respond to the difference signal between them. If the signal source has one side connected to local ground, the differential mode can be used for reducing ground loop.
Page 31
A differential mode must be used when the signal source is differential. A differential source means the ends of the signal are not grounded. To avoid the danger of high voltage between the local ground of signal and the ground of the PC system, a shorted ground path must be connected.
Figure 3.7 Connection of Analog Output Connection 3.4 Digital I/O Connection The ACL-8316/12 provides 16 digital input and 16 digital output channels through the connector CN1 and CN2 on board. The digital I/O signal are fully TTL/DTL compatible. The detailed digital I/O signal specification can be referred in section 1.3.
Figure 3.8 Digital I/O Connection 3.5 Timer / Counter Connection The ACL-8316/12 has an interval timer/counter 8254 on board. It offers 3 independent 16-bit programmable down counters; counter 1 and counter 2 are cascaded together for A/D timer pacer trigger of A/D conversion. and counter 0 is free for your applications.
3.6.3 Connect with ACLD-9182 The ACLD-9182 is a 16 channel isolated digital input board. This board is connected with CN1 of ACL-8316/12 via 20-pin flat cable. The advantage of board is an 500Vdc isolation voltage is provided, and it can protect your PC system from damage when an abnormal input signal is occurred.
Registers Structure & Format The detailed description of the ACL-8316/12‘s register format is specified in this chapter. This information is quite useful for the programmer who wish to handle the ACL-8316/12 card by low- level program. 4.1 I/O Port Addres...
Base + 15 Table 4.1. I/O address map of the ACL-8316/12 Note: The ACL-8316/12 includes both 8 bits & 16 bits I/O ports. The AD Data, DA channels, and digital I/O ports are 16 bits port. All the others are 8 bits I/O port.
AD0 is Least Significant Bit. (2) ACL-8316 (using 16 bits ADC) AD15 AD14 AD13 AD12 AD11 AD10 AD15 .. AD0 : Analog to digital data. AD15 is Most Significant Bit of the 12 bits digits, and AD0 is Least Significant Bit. Note : the 12 bits of A/D data of ACL-8312 are located on the 12 MSBs and the 4 LSB is zero alwayse.
4.4. Gain Control Register The A/D range register is used to adjust the analog input ranges for A/D channels. The Table 4.2 shows the relationship between the register data, gain value and the A/D input range. Address : BASE + 9 Attribute: write only Data Format : Gain...
CS3 .. CS0 : Stop multiplexer channel number. Note that as the hardware jumpers set the ACL-8316/12 to differential input mode, only 8 channels are available. The CS3 value is useless. The initial value of the channel number is 0.
4.7. AD Mode Control Register The A/D mode control register is used to select A/D data transfer mode A/D trigger source, and A/D channel selection. Address : BASE + 12 Attribute: read and write Data Format : DMAENA EXTINT ITSSEL ACSCN ♦...
• • CNH and CN2~CN0 These bits are used to feedback the channel number to be selected. When the ACL-8316/12 is set to be differential mode. CNH will be 1 always. When the A/D mode is in auto scan mode, the channel number will be increased by one automatically.
4.10. Software A/D Trigger Register To read this port can generate A/D trigger signal if the AD mode control register is set to use internal software A/D trigger source. Address : BASE + 10 Attribute: read only Data Format : 4.11.
Page 43
Address : BASE + 10 Attribute: write Data Format : DA_FMT DA_MD1 Address : BASE + 10 Attribute: read Data Format : FF_ENA STYP DA_FMT DA_MD1 The D/A operation and D/A data format are controlled by this register and the jumper JD1 (DA_MD2). The two bits are programmable and be read back too.
DA_FMT: 0: DA data value is in two‘s complement mode which the same as AD. 1: DA data value is in binary mode. FF_ENA: 0: means FIFO is reset 1: means FIFO is enable. STYP: 0: A/D signal sources are differential input. 1: A/D signal sources are signal ended.
Two counter of 8254 are used for periodically triggering the A/D conversion, the left one is left free for user applications. 8254 occupies 4 I/O address locations in the ACL-8316/12 as shown blow. Users can refer to NEC's or Intel's data sheet for a full description of the 8254 features, condensed information is specified in section 5.4 Timer/Counter Operation.
Operation Theorem The operation theorem of the functions on ACL-8316/12 card is described in this chapter. The functions include the A/D conversion, D/A conversion, digital I/O and counter / timer. The operation theorem can help you to understand how to manipulate and to program the ACL-8316/12.
define and control the A/D signal sources, including the A/D channel, A/D gain, and A/D signal types. Please refer to section 5.1.2. for A/D signal source control. After deciding the A/D signal source, the user must decides how to trigger the A/D conversion and define / control the trigger source. The A/D converter will start to convert the signal to a digital value when a trigger signal is rising.
scanning, which is controlled by the ASCAN bit in AD mode control register. As ASCAN is cleared (0), the value of AD channel MUX register defines the channel to be selected. Only one channel can be selected in one moment. As ASCAN is set (1), the value in AD channel MUX register define the ending channel number of auto-scanning operation.
The trigger source is programmable by the A/D mode control register. Please refer to section 4.7 for details of the register. The different trigger conditions are specified as following: Software trigger (EXTINT=0, ITSSEL=0) The trigger source is generated and fully controlled by software under this mode.
The A/D data register can keep the newest conversion data until the ending of the next conversion. The A/D data register can store only one data and the data can be real time operated. The A/D data can also be buffered in the FIFO memory when the FIFO is enable.
Page 51
Software Data Polling from FIFO The A/D data can also be read from FIFO buffer if FIFO is enable. In this mode, the A/D data is read from FIFO after check the FF_EF bit of the A/D status register. As the FF_EF is set (1), the FIFO is not empty and to read A/D value through the FIFO register is available.
complete. The DMA transfer mode is very complex to program. It is recommended to use the high level program library to operate this card. If you wish to program the software which can handle the DMA data transfer, please refer to more information about 8237 DMA controller.
K=32752=2047x16. 5.2. Interrupt System 5.2. Interrupt System The interrupt system of the ACL-8316/12 is very flexible for many applications. There are four plus one (4+1) programmable interrupt sources. The interrupt signal can be routed one of the 10 IRQ channels by jumper setting. The following diagram shows interrupt system.
disable, the other 4 signal can be selectable by program, Sometimes the interrupt signal may be used by combining with the data transfer. For example, the EOC interrupt and the FIFO half- full interrupt can startup an ISR to read data, please refer to section 5.1.5 for data transferring.
Binary Format Unipolar Bipolar 0 to 10V -10V to 10V FFF hex +9.9976V +9.9951V 800 hex +5.0000V 0.0000V 7FF hex +4.9976V -0.0049V 000 hex 0.0000V -10.0000V 1LSB 2.44mV 4.88mV Note that the two D/A channels could be in double buffered mode or in the transparency mode.
Page 56
The maximum pacer signal rate is 2MHz/4=500K which excess the maximum A/D conversion rate of the ACL-8316/12. The minimum signal rate is 2MHz/65535/65535, which is a very slow frequency that user may never use it.
Page 57
I/O Address The 8254 in the ACL-8316/12 occupies 4 I/O address as shown below. BASE + 0 LSB OR MSB OF COUNTER 0 BASE + 1 LSB OR MSB OF COUNTER 1 BASE + 2 LSB OR MSB OF COUNTER 2...
Page 58
• M2, M1 & M0 - Select Operating Mode ( Bit 3, Bit 2, & Bit MODE • BCD - Select Binary/BCD Counting ( Bit 0) 16-BITS BINARY COUNTER BINARY CODED DECIMAL (BCD) COUNTER (4 DIGITAL) Note The count of the binary counter is from 0 up to 65,535 and the count of the BCD counter is from 0 up to 9,999 Mode Definitions...
Software Utility & C/C++ Library The utility program in the software package includes System Configuration, Calibration, and Functional testing. All the utilities are using menu-driven operating mode based on windowing environment, so it is very easy to operate and no more learning effort.
Installation With " ACL-8316/12 Utility & Library " diskette: 1. Turn your PC's power switch on 2. Put the "ACL-8316/12 Utility & Library" diskette into your floppy drive A: or B: A:\ SETUP.BAT With CD-ROM: 1. Turn your PC's power switch on 2.
6.3 C/C++ Programming Library There are 28 function calls are provided by the C Language Library, all the functions of ACL-8316/12 are covered by this library, its capabilities include A/D conversion, D/A conversion, Digital Input and Output, etc. 6.3.1 Data Types We defined some data types in 8316.H.
ERR_BaseAddressError 6.3.3. _8316_Switch_Card_No @ Description This function is used when more than one ACL-8316/12 cards on your system. After initialized more than one ACL-8316/12 card, this function is used to select which card is active currently. Note: In this library, only three ACL-8316/12 can be initialized. The reason is only three DMA channels are supported in the card.
6.3.4. _8316_DI @ Description This function is used to read data from digital input port. There are 16-bit digital inputs on the ACL-8316/12. The digital input status can be accessed by this function directly. @ Syntax I16 _8316_DI( U16 *data )
6.3.6. _8316_DO @ Description This function is used to write data to digital output port. There are 16 digital outputs on the ACL-8316/12. You can control the digital outputs by this function directly. @ Syntax I16 _8316_DO( U16 data )
@ Argument : do_ch_no : the DO channel number, the value has to be set from 0 to 15. do_data : value will be written to digital output port @ Return Code ERR_NoError, ERR_BoardNoInit, ERR_InvalidDOChannel 6.3.8. _8316_DA_Set_Mode @ Description This function is used to configure the D/A output mode . There are four modes can be set when the D/A output is used.
@ Description This function is used to write data to D/A converters. There are two Digital-to-Analog conversion channels on the ACL-8316/12. The resolution of each channel is 12-bit; its data format can be binary or two‘s complement format. Which data format is used...
There are 16 single- ended or 8 differential A/D channels in ACL-8316/12, so the channel number should be set either 0~15 or 0~7. The initial state is channel 0 which is a default setting by the ACL-8316/12 hardware configuration. @ Syntax...
A/D data transfer mode by means of writing data to the AD Mode Control Register (refer to section 4.7). The hardware initial state of the ACL-8316/12 is set as internal software trigger with program polling data transfer. For more detailed A/D mode description, please refer to section 5.1 A/D conversion.
@ Description This function is used to set automatic hardware channel scan to be enable or disable. If the ACL-8316/12 is set as enable mode, then the A/D channel can be converted automatically, that is, the hardware will automatically decrement until channel 0. And then, it will go back to channel which is set by _8316_AD_Set_Channle and wrap back to zero again.
@ Return Code ERR_NoError, ERR_BoardNoInit 6.3.15. _8316_AD_Set_INT_Source @ Description Four interrupt sources can be used to trigger the interrupt : INTSRC_EXTERNAL : the interrupt is trigger by external source through pin-17 of CN3 ( ExtTrg signal) INTSRC_EOC : interrupt is triggered when an EOC ( A/D converter‘s end of conversion)is asserted.
6.3.16. _8316_CLR_IRQ @ Description This function is used to clear interrupt request which requested by the ACL-8316/12. If you use interrupt to transfer A/D converted data, you should use this function to clear interrupt request status, otherwise no new coming interrupt will be generated.
6.3.18. _8316_AD_Read_FIFO @ Description This function is used to get the AD conversion data which are stored in the FIFO. This function is useful when the FIFO is enabled and converted A/D data already saved in it. @ Syntax I16 _8316_AD_Read_FIFO( I16 *ad_data ) @ Argument : ad_data : 16 or 12 bits A/D converted value.
6.3.20. _8316_AD_DMA_Start @ Description The function will perform A/D conversion N times with DMA data transfer by using the pacer trigger ( internal timer trigger). It will take place in the background which will not stop until the Nth conversion completed your program...
Page 74
ad_range : A/D analog input range, the possible values are : Input Range ad_range GAIN ±10V AD_B_10_V ±5V AD_B_5_V ±2.5V AD_B_2_5_V ±1.25V AD_B_1_25_V dma_ch_no : DMA channel number, DMA_CH_5, DMA_CH_6 or DMA_CH_7 Note : Make sure your hardware configuration is set to right DMA channel.
6.3.21. _8316_AD_DMA_Status @ Description Since the _8316_AD_DMA_Start function is executed in background, you can issue the function _8316_AD_DMA_Status to check its operation status. @ Syntax _8316_AD_DMA_Status( U8 *status , U16 *count ) @ Argument : status : status of the DMA data transfer 0 : AD DMA is not completed 1 : AD DMA is completed count :...
@ Return Code ERR_NoError, ERR_BoardNoInit, ERR_AD_DMANotSet @ Example See Demo Program 'AD_DEMO3.C' 6.3.23. _8316_AD_INT_Start @ Description The function will perform A/D conversion N times with interrupt data transfer by using pacer trigger. It takes place in the background which will not stop until the Nth conversion has completed or your program executes _8316_AD_INT_Stop() function to stop the process.
Page 77
through I/O port. auto_scan : 0 : auto-scan is disabled 1 : auto-scan is enabled ad_ch_no : A/D channel number ad_range : A/D analog input range, the possible values are : Input Range ad_range GAIN ±10V AD_B_10_V ±5V AD_B_5_V ±2.5V AD_B_2_5_V ±1.25V AD_B_1_25_V...
6.3.24. _8316_AD_INT_Status @ Description Since the _8316_AD_INT_Start() function is executed in background, you can issue the function _8316_AD_INT_Status to check the status of interrupt operation. @ Syntax I16 _8316_AD_INT_Status( U8 *status, U16 *count ) @ Argument : status : status of the INT data transfer 0 : A/D INT is completed 1 : A/D INT is not completed count :...
ERR_NoError, ERR_BoardNoInit, ERR_InvalidTimerValue 6.3.27 _8316_TIMER_Start @ Description The Timer #0 on the ACL-8316/12 can be freely programmed by the users. This function is used to program the Timer #0. This timer can be used as frequency generator if internal clock is...
used. It also can be used as event counter if external clock is used. All the 8253 mode is available. @ Syntax I16 _8316_TIMER_Start( U8 timer_mode, U16 c0 ) @ Argument : timer_mode : the 8253 timer mode, the possible values are : TIMER_MODE0, TIMER_MODE1, TIMER_MODE2, TIMER_MODE3, TIMER_MODE4, TIMER_MODE5.
6.3.29. _8316_TIMER_Stop @ Description This function is used to stop the timer operation. The timer is set to the 'One-shot' mode with counter value ' 0 '. That is, the clock output signal will be set to high after executing this function.
Users can calibrate the analog input and analog output channels under the users' operating environment for optimizing the accuracy. This chapter will guide you to calibrate your ACL-8316/12 to an accuracy condition. 7.1 What do you need Before calibrating your ACL-8316/12 card, you should prepare some equipment’s for the calibration:...
7.2 VR Assignment There are five variable resistors (VR) on the ACL-8316/12 board to allow you making accurate adjustment on A/D and D/A channels. The function of each VR is specified as Table 7.1. A/D bipolar offset adjustment A/D full scale adjustment...
7.4 D/A Adjustment 7.4.1 DA Channel 1 Calibration 1. Set JP5 to BI1 (Bipolar for DA Channel 1). 2. Connect VDM (+) to CN3.AO1 pin-30 and VDM(-) to CN3.GND pin-29. 3. Set DA1 output to 0x8000 4. Trim the variable resister VR4 to obtain -10.005V reading in the DVM.
Appendix B Low-Level Programming The low-level programming can be carried out by either assembly or high-level language such as BASIC or C language. The following gives examples to show how to use programming language to access a DAS card or any add-on I/O card. Getting Start Before programming, the add-on card should be correctly installed.
Page 87
BASIC language To write an output port: BASE=&H220 VALUE% = &H2F OUT( BASE+2), VALUE % OUT( &H222 ), &H2F To read an input port BASE=&H220 VALUE=INP( BASE+2) VALUE=INP( &H222 ) C language (Borland C++) To write an output port: #define BASE 0x220 unsigned int Value=0x2F;...
Page 88
Perform Functions Users should study the operation theorem and the relative data sheet to understand how to operate this card, then use the low- level programming to perform those functions. Generally, the D/A or DIO control can be easily performed by only a few instructions, it is very suitable to use the low level programming.
Product Warranty/Service Seller warrants that equipment furnished will be free form defects in material and workmanship for a period of one year from the confirmed date of purchase of the original buyer and that upon written notice of any such defect, Seller will, at its option, repair or replace the defective item under the terms of this warranty, subject to the provisions and specific exclusions listed herein.
Need help?
Do you have a question about the ACL-8316/12 and is the answer not in the manual?
Questions and answers