SC5406B Operating & Programming Manual Rev 1.1
i
SC5406B
1 MHz to 3.9 GHz RF Upconverter Core Module with USB and RS232/SPI Operating & Programming Manual
© 2015-2020 SignalCore, Inc.
[email protected]
Page 1: ...SC5406B Operating Programming Manual Rev 1 1 i SC5406B 1 MHz to 3 9 GHz RF Upconverter Core Module with USB and RS232 SPI Operating Programming Manual 2015 2020 SignalCore Inc support signalcore com...
Page 2: ...ring the SC5406B 4 Signal Connections 5 Communication and Supply Connection 6 Mini USB Connection 7 Reset Button Pin Hole 7 Indicator LEDs 7 SC5406B Theory of Operation 8 Overview 8 Signal Path Descri...
Page 3: ...Spectral Inversion in the RF 19 Storing Data into the User EEPROM Space 19 Setting the Phase of the RF Signal 19 Querying the SC5406B Writing USB Request Registers Directly 20 Reading Device Status D...
Page 4: ...vice via RS232 50 Programming the SC5406B Serial Peripheral Interface 51 The SPI Communication Connector 51 The SC5406B SPI Architecture 51 SPI Clock Rates and Modes 52 Writing Configuration Data via...
Page 5: ...elated to this document or the information contained in it EXCEPT AS SPECIFIED HEREIN SIGNALCORE INCORPORATED MAKES NO WARRANTIES EXPRESS OR IMPLIED AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANT...
Page 6: ...e information and data provided by our component suppliers and may not have been independently verified through other means For products sold into China we also comply with the Administrative Measure...
Page 7: ...ION INSTALLATION ERRORS SOFTWARE AND HARDWARE COMPATIBILITY PROBLEMS MALFUNCTIONS OR FAILURES OF ELECTRONIC MONITORING OR CONTROL DEVICES TRANSIENT FAILURES OF ELECTRONIC SYSTEMS HARDWARE AND OR SOFTW...
Page 8: ...arge ESD Under certain conditions an ESD event can instantly and permanently damage several of the components found in SignalCore products Therefore to avoid damage when handling any SignalCore hardwa...
Page 9: ...completely evaporated Excess liquid alcohol trapped inside the connector may take several days to fully evaporate and may degrade measurement performance until fully evaporated Tighten all SMA connect...
Page 10: ...or are listed Table 1 below Table 1 Communication IO connector pin definitions PIN Description PIN Description 1 3 12V Supply rail 21 Device Active 2 4 10 16 20 24 28 GND 22 Device Status 5 6 7 8 9 15...
Page 11: ...al indication of important modes There are two redundant pairs of LED indicators on the device two to the left of the micro D connector and two on the opposite side of the module The LED closest to th...
Page 12: ...ing the device accordingly Fundamentally each conversion stage consists of a frequency mixer that mixes two input signals and produces a wanted third The wanted third component is selected via a frequ...
Page 13: ...l generator is powered down to prevent possible leakages into the IF path It is strongly recommended that the IF source be disconnected when internal generation is selected to prevent external leakage...
Page 14: ...2 0 30 dB IF3 Atten1 0 30 dB 675 MHz Filter IF3 FL RF Out 1 MHz 3900 MHz IF In 70 MHz Ref In 10 MHz Ref Out 10 100 MHz 3 9 GHz Three Stage Upconverter Output level 110 dBm to 15 dBm Nom input level 0...
Page 15: ...ption The signal path circuit is separate from the local oscillator generation circuits to maximize isolation between the RF IF signals and the local oscillators except for the LO injection paths into...
Page 16: ...rnal 100 MHz voltage controlled crystal oscillator VCXO which sets their close in phase noise performance The 100 MHz VCXO is in turn phase locked to the internal 10 MHz TCXO for frequency accuracy an...
Page 17: ...er to set a new frequency Comparing times the device requires up to 175 microseconds to compute and change to a new frequency in PLL only modes but requires up to 350 microseconds in the DDS tuning mo...
Page 18: ...enuator parameters to set up the device for the best compromise of linearity and noise performance for a given set of input and output parameters Operating the SC5406B Outside Normal Range The SC5406B...
Page 19: ...Windows dynamic linked library sc5406B dll or Linux shared library libsc5406B so For more information on the libusb driver visit www libusb org For the Windows platform libusb 1 0 relies on WinUSB at...
Page 20: ...he next section Reading the Device Registers Directly Valid data is only available to be read back after writing one of the query registers With the exception of registers 0x24 GET_CAL_EEPROM_BULK and...
Page 21: ...SETTING 0x13 7 0 Open Open Open Open Open Fast Tune Enable 0x00 IF_FILTER_SELECT 0x15 7 0 Open Open Open Open Open Open Open Band 0x00 SIG GEN_ENABLE 0x1B 7 0 Open Open Open Open Open Open Open Enable...
Page 22: ...0x01 Changing the RF Synthesizer Mode The RF_MODE_SETTING 0x13 register has one data byte that provides two tuning modes for the device Fast Tune and Fine Tune By default the Fast Tune mode is disable...
Page 23: ...choose to write a different value to the reference DAC by accessing the REFERENCE_DAC 0x17 register Command data is 16 bits maximum Setting Spectral Inversion in the RF The default RF spectral polarit...
Page 24: ...Open Open Open Open Open Open Open 7 0 15 8 Read Byte 63 Read Byte 0 7 0 15 8 Read Byte 63 Read Byte 0 READ_USER_EEPROM_BULK 0x25 EEPROM Start Address 7 0 EEPROM Start Address 15 8 User EEPROM data S...
Page 25: ...alue The temperature value represented in the raw data is contained in the next 13 bits 12 0 To obtain the temperature ADC code the raw data should be masked logically ANDed with 0x1FFF and the polari...
Page 26: ...ned 32 bit words Each data point is comprised of four unsigned bytes so data must be read back in multiples of four bytes with the least significant byte stored in the lower address After the data are...
Page 27: ...g of the device Table 5 EEPROM memory map of device attributes and raw calibration data EEPROM ADD HEX DATA POINTS BYTES TYPE Array matrix DESCRIPTION 0X00 1 4 U32 1x1 Manufacturing Information 0X04 1...
Page 28: ...Last Calibration Date 0x10 This is an unsigned integer byte 3 is the Year byte 2 is the Month byte 1 is the day of the month and byte 0 is the hour of the day Firmware Revision 0x2C This is a float 3...
Page 29: ...mat Table 7 Relative IF gain and phase response calibration and format Frequency Offset MHz 12 11 5 5 5 0 5 5 11 5 12 Gain Error 58 2 20 6 0 9 0 2 0 0 0 3 0 2 12 8 30 4 Phase Error radians 0 0 0 0 0 0...
Page 30: ...nce DAC that controls the TCXO which is the primary frequency reference of the device The user may choose to reprogram the DAC with the 16 bit code obtained from the EEPROM at starting address 0x54 or...
Page 31: ...are treated below To obtain calibrated gain values from the parameters that are a function of frequency interpolation is required to provide the best estimated values A natural cubic Spline interpola...
Page 32: ...e gain measured at the calibration temperature 0 can be written as 0 1 0 2 2 0 2 Equation 5 Using equation 5 and the temperature coefficients of Table 6 we obtain the following Table 12 Calculated gai...
Page 33: ...tion for the amplitude error gain and multiply this function with the uncorrected amplitude spectrum Add the two values if dealing in decibels Additionally determine a fitted polynomial function for t...
Page 34: ...he unique requirements of the LabVIEW programming environment e g LabVIEW already provides standard math functions for curve fitting with spline interpolation sc5406B_SearchDevices sc5406B_OpenDevice...
Page 35: ...nuation steps 1 30 dB define IFRESPONSEPARAM 3 freq amp phase define IFRESPONSEFREQ 51 freq points over the bandwidth define TEMPCOPARAM 3 freq coeff 1 coeff 2 define TEMPCOFREQ 8 freq points Attenuat...
Page 36: ...F filter 0 response calibration float ifFil1ResponseCal IF filter 1 response calibration float tempCoeff temperature coefficients float rfCalTemp temperature T0 at which calibration was done float ifF...
Page 37: ...RefLockEnable bool ifBandSelect bool hiFreqSelect bool standbyEnable bool sigGenEnable deviceStatus_t typedef struct ifResponseCorrect_t float ampCorrect float phaseCorrect ifResponseCorrect_t typedef...
Page 38: ...array containing their serial numbers The user can use this information to open the device s with their serial numbers See sc5406B_OpenDevice function for information on how to open a device Function...
Page 39: ...function should rarely be used Example To set the RF attenuator value to 10 dB int status sc5406B_RegWrite devHandle 0x11 0x020A Declaring char deviceList deviceHandle devHandle int devicesFound int...
Page 40: ...e information Example To read the status of the device Function sc5406B_SetStandby Definition int sc5406B_SetStandby deviceHandle devHandle bool standbyStatus Return The status of the function Input d...
Page 41: ...sc5406B_SetSignalChain deviceHandle devHandle attenuator_t atten Return The status of the function Input deviceHandle devhandle handle to the opened device unsigned int atten values to the attenuator...
Page 42: ...etIfFilterPath selects the IF filter Function sc5406B_SetReferenceClock Definition int sc5406B_SetReferenceClock deviceHandle devHandle bool lockExtEnable bool RefOutEnable bool Clk100Enable Return Th...
Page 43: ...f the signal by the amount specified Function sc5406B_SetSigGenEnable Definition int sc5406B_ SeSigGenEnable unsigned int deviceHandle bool sigGenEnable Return The status of the function Input unsigne...
Page 44: ...put deviceHandle devhandle handle to the opened device Output float temperature temperature in degrees C Description sc5406B_GetTemperature retrieves the internal temperature of the device Function sc...
Page 45: ...igned int startMemAdd unsigned char byteDataArray Return The status of the function Input deviceHandle devhandle handle to the opened device unsigned int memAdd EEPROM start memory address Output unsi...
Page 46: ...tributes device attributes calibrationData_t calData structured calibration data Description sc5406B_GetCalData returns the device attributes such as serial number calibration date and also structured...
Page 47: ...at calData ifAttenCal float calloc IFATTENUATOR sizeof float for i 0 i IFATTENUATOR i calData ifAttenCal i float calloc IFATTENCALVALUE sizeof float calData ifFil0ResponseCal float calloc IFRESPONSEPA...
Page 48: ...requency mixer level etc The values are calculated to maintain a good balance between the signal to noise dynamic range and the linearity dynamic range The perfSelect input has 0 Optimized for lineari...
Page 49: ...attenuator attenuation settings for RF IF1 and final IF3 attenuators Description SC5406B_CalcAutoSigGenAttenuation returns the set of attenuation settings for all the attenuators that will configure...
Page 50: ...Input unsigned int frequency input RF frequency in Hz bool ifInvertEnable enable IF spectral inversion attenuator_t atten attenuation settings float temperature temperature value of the device in deg...
Page 51: ...es one can simply subtract the frequencies from the IF center frequency For example if a digitizer sampling at 100 MHz is used to digitize the 70 MHz IF signal with bandwidth of 3 MHz the center of th...
Page 52: ...s xArray int nPoints the number of points in xArray double firstBoundary the second derivative of the first point in the set double secondBoundary the second derivative of the last point in the set Ou...
Page 53: ...e set at power up or on hardware reset of the device through pin 18 of the auxiliary front panel connector This pin is defaulted to logic high which set the baud rate at 57600 Pulling this pin to logi...
Page 54: ...its instruction it will return 1 byte back to the host Querying this return byte ensures that the prior configuration command has been successfully executed and the device is ready for the next regis...
Page 55: ...Output output from slave 28 GND Signal Ground 29 MOSI Master Output Slave Input output from master 30 SRDY Indicates on high when SPI is ready The SC5406B SPI Architecture The SC5406B SPI interface is...
Page 56: ...significant byte MSB of the data is sent immediately after the register address byte The CS pin must be asserted low for a minimum period of 1 before data is clocked into the SC5406B The clock rate ma...
Page 57: ...selectable modes of SPI operation available on the device Leaving pin 23 of the communication I O connector open or pulled high 3 3V mode 1 is enabled at power up or upon device reset Jumping the pin...
Page 58: ...Data Bytes Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Default INITIALIZE 0x01 7 0 Open Open Open Open Open Open Open Mode 0x00 SET_SYSTEM_ACTIVE 0x02 7 0 Open Open Open Open Open Open Open Enable...
Page 59: ...PROM Address 7 0 EEPROM Address 15 8 FETCH_CAL_EEPROM 0x20 Data Byte 0 Data Byte 1 SPI_OUTPUT_BUFFER 0x1A EEPROM Address 7 0 EEPROM Address 15 8 After issuing a request command the device gathers the...
Page 60: ...register Table 18 Valid returned data bytes Register Address Reg Code Byte 1 Byte 0 GET TEMPERATURE 0x19 Valid Valid GET DEVICE STATUS 0x18 Valid Valid READ USER EEPROM 0x22 Valid READ CAL EEPROM 0x20...
Page 61: ...intains a calibration data archive of all units shipped Archiving this data is important should a customer need to reload calibration data into their device for any reason SignalCore also uses the arc...
Page 62: ...SC5406B Operating Programming Manual Rev 1 2 58 R E V I S I O N N O T E S Rev 1 0 Original document Rev 1 1 Address Removed Rev 1 2 Updates for Clarity...