PSoC® Creator™ Component Datasheet PSoC 4 Operational Amplifier (Opamp) 1.0 Features Follower or Opamp configuration Rail-to-rail inputs and output Output direct low resistance connection to pin 1mA or 10mA output current Internal connection for follower General Description The Opamp operates as an off-the-shelf operation amplifier. A direct connection is made between the Opamp output to a GPIO pin for a low output resistance. Two output current levels (1mA and 10mA) are provided to drive internal or external signals respectively. The 10mA may drive both internal (SAR component) and external signals. The user also has control of different overall power levels that provide a tradeoff between power and bandwidth. Note External resistors are required to perform amplification. When to Use the Opamp The following is a list of common use cases for the Opamp component: Gain for SAR ADC High impedance buffer for SAR ADC General purpose signal amplifier Active filter CypressSemiconductorCorporation Document Number: 001-86487 Rev. *B • 198 Champion Court • SanJose, CA 95134-1709 • 408-943-2600 Revised March 28, 2016 PSoC 4 Operational Amplifier (Opamp) PSoC® Creator™ Component Datasheet Input/Output Connections This section describes the various input and output connections for the Opamp. Positive Input–Analog Input When the Opamp is configured as a follower, this I/O is the voltage input. If the Opamp is configured as an Opamp, this I/O acts as the standard Opamp noninverting input. Negative Input– Analog Input* When the Opamp component is configured for Opamp mode, this I/O is the normal inverting input. When the Opamp is configured in Follower mode, this I/O is hard-connected to the output and the I/O is unavailable. Vout– Analog output The output can be directly connected to a pin and/or routed to an internal load using the analog routing fabric. The drive strength is selectable as either 10 mA or 1 mA. Connections to pins require the 10 mA setting. Internal connections can operate with either the 1 mA or 10 mA setting, but should normally be configured for 1 mA. Page 2 of 12 Document Number: 001-86487 Rev. *B PSoC® Creator™ Component Datasheet PSoC 4 Operational Amplifier (Opamp) Component Parameters Drag Opamp onto your design and double-click it to open the Configure dialog. Figure 1 shows the Configure dialog. Figure 1.Configure Opamp Dialog The Opamp provides the following parameters. Mode This parameter allows you to select between two configurations: Opamp and Follower. Opamp is the default configuration. In this mode, all three terminals are available for connection. In follower mode, the inverting input is internally connected to the output to create a voltage follower. Power The Opamp works over a wide range of operating currents. Higher operating current increases Opamp bandwidth. The Power parameter allows you to select the power level: High Power, Medium Power, and Low Power. Output Selects output mode: 1 mA – internal connections or 10 mA – connection to pin. Document Number: 001-86487 Rev. *B Page 3 of 12 PSoC 4 Operational Amplifier (Opamp) PSoC® Creator™ Component Datasheet Compensation The opamp offers three compensation settings: High Speed, Balanced and High Stability. This allows for reducing the compensation (hence increase bandwidth) when the Opamp’s loop gain is reduced. Placement Each Opamp is directly connected to specific GPIOs along with being connected to the internal fabric. Output connection to a GPIO requires the use of the directly connected pin. Refer to the device datasheet for the part being used for the specific physical pin connections. Resources The Opamp uses one of the opamp (Constant Time Block – mini (CTBm)) blocks in PSoC 4. No other resources are required. Application Programming Interface Application Programming Interface (API) routines allow you to configure the component using software. The following table lists and describes the interface to each function. The subsequent sections cover each function in more detail. By default, PSoC Creator assigns the instance name "Opamp_1" to the first instance of a component in a given design. You can rename it to any unique value that follows the syntactic rules for identifiers. The instance name becomes the prefix of every global function name, variable, and constant symbol. For readability, the instance name used in the following table is "Opamp" Functions Function Description Opamp_Init() Initializes or restores the component according to the customizer Configure dialog settings. Opamp_Enable() Activates the hardware and begins component operation. Opamp_Start() Performs all of the required initialization for the component and enables power to the block. Opamp_Stop() Turns off the Opamp block. Opamp_SetPower() Sets the drive power to one of three settings; LOWPOWER, MEDPOWER, HIGHPOWER. Opamp_PumpControl() Turn the boost pump on or off. Opamp_Sleep() This is the preferred API to prepare the component for sleep. Page 4 of 12 Document Number: 001-86487 Rev. *B PSoC® Creator™ Component Datasheet Function PSoC 4 Operational Amplifier (Opamp) Description Opamp_Wakeup() This is the preferred API to restore the component to the state when Opamp_Sleep() was called. Opamp_SaveConfig() Saves the configuration of the component. Opamp_RestoreConfig() Restores the configuration of the component. void Opamp_Init(void) Description: Initializes or restores the component according to the customizer Configure dialog settings. It is not necessary to call Opamp_Init() because the Opamp_Start() API calls this function and is the preferred method to begin component operation. Parameters: None Return Value: None Side Effects: All registers will be set to values according to the customizer Configure dialog. void Opamp_Enable(void) Description: Activates the hardware and begins component operation. It is not necessary to call Opamp_Enable() because the Opamp_Start() API calls this function, which is the preferred method to begin component operation. Parameters: None Return Value: None Side Effects: None void Opamp_Start(void) Description: Performs all of the required initialization for the component and enables power to the block. The first time the routine is executed, the power level, Mode, and Output mode is set. When called to restart the Opamp following a Opamp_Stop() call, the current component parameter settings are retained. Parameters: None Return Value: None Side Effects: None Document Number: 001-86487 Rev. *B Page 5 of 12 PSoC 4 Operational Amplifier (Opamp) PSoC® Creator™ Component Datasheet void Opamp_Stop(void) Description: Turn off the Opamp block. Parameters: None Return Value: None Side Effects: Does not affect Opamp mode or power settings void Opamp_SetPower(uint32 power) Description: Sets the drive power to one of three settings; Opamp_LOWPOWER, Opamp_MEDPOWER, Opamp_HIGHPOWER. Parameters: (uint32) power: Opamp_LOWPOWER, Opamp_MEDPOWER, Opamp_HIGHPOWER. Return Value: None void Opamp_PumpControl(uint32 onOff) Description: Allows user to turn the Opamp’s boost pump on or off. By Default the Opamp_Start() function turns on the pump. Use this command to turn it off. Parameters: (uint32) onOff: Opamp_PUMPON will turn on the pump, Opamp_PUMPOFF will turn off the pump. Return Value: None Side Effects: Turning this pump off will reduce the opamp input range by 1.5 volts or (Vssa to (Vdda – 1.5 volts)) void Opamp_Sleep(void) Description: This is the preferred API to prepare the component for sleep. The Opamp_Sleep() API saves the current component state. Then it calls the Opamp_Stop() function and calls Opamp_SaveConfig() to save the hardware configuration. Call the Opamp_Sleep() function before calling the CySysPmDeepSleep() or the CySysPmHibernate() functions. Parameters: None Return Value: None Side Effects: None Page 6 of 12 Document Number: 001-86487 Rev. *B PSoC® Creator™ Component Datasheet PSoC 4 Operational Amplifier (Opamp) void Opamp_Wakeup(void) Description: This is the preferred API to restore the component to the state when Opamp_Sleep() was called. The Opamp_Wakeup() function calls the Opamp_RestoreConfig() function to restore the configuration. If the component was enabled before the Opamp_Sleep() function was called, the Opamp_Wakeup() function will also re-enable the component. Parameters: None Return Value: None Side Effects: Calling the Opamp_Wakeup() function without first calling the Opamp_Sleep() or Opamp_SaveConfig() function may produce unexpected behavior. void Opamp_SaveConfig(void) Description: This function saves the component configuration and non-retention registers. This function is called by the Opamp_Sleep() function. Parameters: None Return Value: None Side Effects: None void Opamp_RestoreConfig(void) Description: This function restores the component configuration and non-retention registers. This function is called by the Opamp_Wakeup() function. Parameters: None Return Value: None Side Effects: None MISRA Compliance This section describes the MISRA-C:2004 compliance and deviations for the component. There are two types of deviations defined: project deviations – deviations that are applicable for all PSoC Creator components and specific deviations – deviations that are applicable only for this component. This section provides information on component specific deviations. The project deviations are described in the MISRA Compliance section of the System Reference Guide along with information on the MISRA compliance verification environment. The Opamp component does not have any specific deviations. Document Number: 001-86487 Rev. *B Page 7 of 12 PSoC® Creator™ Component Datasheet PSoC 4 Operational Amplifier (Opamp) Sample Firmware Source Code PSoC Creator provides numerous example projects that include schematics and example code in the Find Example Project dialog. For component-specific examples, open the dialog from the Component Catalog or an instance of the component in a schematic. For general examples, open the dialog from the Start Page or File menu. As needed, use the Filter Options in the dialog to narrow the list of projects available to select. Refer to the "Find Example Project" topic in the PSoC Creator Help for more information. Functional Description This component is a basic operational amplifier. You may configure power, output strength, and interconnect the Opamp to other components. Low resistive connections are made from the Opamp to three select pins to provide optimal performance. Using of the Compensation option There are recommended settings for the Compensation option: Load Capacitance Loop Gain 1-6 7 or more Power Mode 50 pF 125 pF (max) Low Balanced High Stability Medium Balanced High Stability High Balanced High Stability Low High Speed Balanced Medium High Speed Balanced High High Speed Balanced These settings are applicable for 10 mA output, which is capable to drive a pin. 125 pF is the maximum load capacitance for this output. 50 pF is listed as a value “in the middle”. Page 8 of 12 Document Number: 001-86487 Rev. *B PSoC® Creator™ Component Datasheet PSoC 4 Operational Amplifier (Opamp) Block Diagram and Configuration Component uses cy_psoc4_abuf primitive. Registers See the chip Technical Reference Manual (TRM) for more information about registers. API Memory Usage The component memory usage varies significantly, depending on the compiler, device, number of APIs used and component configuration. The following table provides the memory usage for all APIs available in the given component configuration. The measurements have been done with the associated compiler configured in Release mode with optimization set for Size. For a specific design, the map file generated by the compiler can be analyzed to determine the memory usage. PSoC 4 (GCC) Configuration Default Flash SRAM Bytes Bytes 252 12 Document Number: 001-86487 Rev. *B Page 9 of 12 PSoC® Creator™ Component Datasheet PSoC 4 Operational Amplifier (Opamp) DC and AC Electrical Characteristics Specifications are valid for –40 °C ≤ TA ≤ 85 °C and TJ ≤ 100 °C, except where noted. Specifications are valid for 1.71 V to 5.5 V, except where noted. Opamp DC Specifications Parameter Description Min Typ Max Units Details/Conditions IDD Opamp Block current. No load. – – – – IDD_HI Power = high – 1000 1300 µA IDD_MED Power = medium – 320 500 µA IDD_LOW Power = low – 250 350 µA IOUT_MAX VDDA 2.7 V, 500 mV from rail – – – – IOUT_MAX_HI Power = high 10 – – mA IOUT_MAX_MID Power = medium 10 – – mA IOUT_MAX_LO Power = low 10 5 – mA IOUT VDDA = 1.71 V, 500 mV from rail – – – – IOUT_MAX_HI Power = high 4 – – mA IOUT_MAX_MID Power = medium 4 – – mA IOUT_MAX_LO Power = low 4 2 – mA VIN Charge pump on, VDDA 2.7 V –0.05 – VDDA – 0.2 V VCM Charge pump on, VDDA 2.7 V –0.05 – VDDA – 0.2 V VOUT VDDA 2.7V – – – VOUT_1 Power = high, Iload=10 mA 0.5 – VDDA – 0.5 V VOUT_2 Power = high, Iload=1 mA 0.2 – VDDA – 0.2 V VOUT_3 Power = medium, Iload=1 mA 0.2 – VDDA – 0.2 V VOUT_4 Power = low, Iload=0.1mA 0.2 – VDDA – 0.2 V VOS_TR Offset voltage, trimmed 1 ±0.5 1 mV High mode VOS_TR Offset voltage, trimmed – ±1 – mV Medium mode VOS_TR Offset voltage, trimmed – ±2 – mV Low mode VOS_DR_TR Offset voltage drift, trimmed –10 ±3 10 µV/C High mode VOS_DR_TR Offset voltage drift, trimmed – ±10 – µV/C Medium mode VOS_DR_TR Offset voltage drift, trimmed – ±10 – µV/C Low mode CMRR DC 70 80 – dB VDDD = 3.6 V PSRR At 1 kHz, 100 mV ripple 70 85 – dB VDDD = 3.6 V Page 10 of 12 Document Number: 001-86487 Rev. *B PSoC® Creator™ Component Datasheet Parameter Cload Description Stable up to maximum load. Performance specs at 50 pF. PSoC 4 Operational Amplifier (Opamp) Min Typ Max Units – – 125 pF Min Typ Max Units Details/Conditions Opamp AC Specifications Parameter Description GBW Load = 20 pF, 0.1 mA. VDDA = 2.7 V – – – – GBW_HI Power = high 6 – – MHz GBW_MED Power = medium 4 – – MHz GBW_LO Power = low 2 – – MHz – – – – Noise VN1 Input referred, 1 Hz - 1GHz, power = high – 94 – µVrms VN2 Input referred, 1 kHz, power = high – 72 – nV/rtHz VN3 Input referred, 10kHz, power = high – 28 – nV/rtHz VN4 Input referred, 100kHz, power = high – 15 – nV/rtHz Cload Stable up to maximum load. Performance specs at 50 pF. – – 125 pF Slew_rate Cload = 50 pF, Power = High, VDDA 2.7 V 6 – – V/µsec T_op_wake From disable to enable, no external RC dominating – 300 – µSec Document Number: 001-86487 Rev. *B Details/Conditions Page 11 of 12 PSoC 4 Operational Amplifier (Opamp) PSoC® Creator™ Component Datasheet Component Changes This section lists the major changes in the component from the previous version. Version Description of Changes 1.0.b Minor datasheet edit. 1.0.a Updated datasheet. 1.0 First release Reason for Changes / Impact Corrected specs to match device datasheet. © Cypress Semiconductor Corporation, 2013-2016. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the use of any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be used for medical, life support, life saving, critical control, or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. PSoC® is a registered trademark, and PSoC Creator™ and Programmable System-on-Chip™ are trademarks of Cypress Semiconductor Corp. All other trademarks or registered trademarks referenced herein are property of the respective corporations. Any Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and foreign), United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create derivative works of, and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used only in conjunction with a Cypress integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source Code except as specified above is prohibited without the express written permission of Cypress. Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described herein. Cypress does not assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical components in lifesupport systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. Use may be limited by and subject to the applicable Cypress software license agreement. Page 12 of 12 Document Number: 001-86487 Rev. *B