CCVS (Dependent Voltage Source) Symbol
Definition: The CCVS symbol represents a current-controlled voltage source — a dependent source whose output voltage equals a transresistance rm (in ohms, volts per amp) times a controlling current flowing through a designated branch elsewhere in the circuit — drawn per IEEE 315 / ANSI convention as a DIAMOND containing + and − marks, with the controlling branch (Ctrl In, Ctrl Out) carrying the sensed current.
Also known as: current-controlled voltage source, dependent voltage source, controlled voltage source, H source, transresistance source, transimpedance source, rm source.
What the CCVS (Dependent Voltage Source) symbol means
The CCVS symbol denotes an idealized two-port element in which a controlling branch (Ctrl In to Ctrl Out) carries a current ix — ideally through zero resistance, so sensing it disturbs nothing — and an output port (+, −) imposes a voltage vout = rm·ix on the rest of the circuit regardless of load current. The gain rm is a transresistance (also called transimpedance), measured in ohms, because it converts an input current into an output voltage: volts out per amp in.
The CCVS is the idealization behind every transimpedance amplifier — the circuit that turns a photodiode's microamps into a usable voltage — and appears in two-port network theory as the h-parameter and z-parameter forward-transfer elements. In SPICE it is the H element, and because SPICE can only sense current through a voltage source, the controlling current must flow through a named voltage source (often a 0 V dummy source acting as an ammeter): H1 out+ out− Vsense rm.
How to identify the CCVS (Dependent Voltage Source) symbol
The output side is a DIAMOND containing + and − signs: a dependent source (diamond) that produces a voltage (±). What makes it current-controlled rather than voltage-controlled is the controlling quantity: instead of a high-impedance voltage-sensing pair, the schematic shows a series branch — Ctrl In and Ctrl Out terminals, often drawn as a short loop or a labeled wire on the left — through which the controlling current ix flows, with the gain annotated as rm·ix beside the diamond.
Compare the four siblings: diamond-with-± controlled by a current is the CCVS (H); diamond-with-± controlled by a voltage is the VCVS (E); diamond-with-arrow controlled by a current is the CCCS (F); diamond-with-arrow controlled by a voltage is the VCCS (G). On IEC-style schematics the diamond may be replaced by an annotated circle, so read the gain expression — an ix inside it means current-controlled.
Function in a circuit
In analysis, the CCVS enforces vout = rm·ix, where ix must be identified as the current through a specific branch. This couples mesh equations naturally (the controlling current is often a mesh current), while in nodal analysis the controlling branch typically needs an auxiliary equation. The controlling branch is ideally a short circuit — zero volts dropped while sensing — and the output is an ideal voltage source with zero output impedance.
Practically the CCVS models current-to-voltage conversion. A transimpedance amplifier (op-amp with feedback resistor Rf on a current input) realizes vout = −Rf·iin, a CCVS of transresistance Rf. Current-shunt monitoring — a shunt resistor plus amplifier producing a voltage proportional to load current — is CCVS behavior at system level, and the forward voltage transfer in h-parameter BJT models (hre term aside) and z-parameter two-ports is written with CCVS elements.
Standards: IEC vs ANSI
| IEC 60617 | IEC 60617 defines no separate diamond for controlled sources; IEC-tradition schematics annotate a source circle with the controlling law (rm·ix). The diamond convention is nonetheless standard in international textbooks and simulation documentation. |
|---|---|
| ANSI/IEEE 315 | IEEE 315 / ANSI practice draws the CCVS as a diamond with internal ±, the controlling current identified on a designated branch. SPICE implements it as the H element, sensing the controlling current through a named voltage source: H<name> out+ out− Vsense gain. |
| Key difference | Diamond (IEEE/textbook, dependent) versus annotated circle (strict IEC) is the visual split, identical to the other dependent sources. Unique to the current-controlled pair (H and F) is the SPICE requirement that the controlling current flow through a voltage source — commonly a 0 V dummy source inserted as an ammeter — since SPICE cannot reference a branch current directly by node names. |
Terminals / pins
| Pin | Name |
|---|---|
| pos | + |
| neg | - |
| ci | Ctrl In |
| co | Ctrl Out |
Typical values
Transresistance rm is expressed in ohms (V/A). Practical magnitudes: photodiode transimpedance amplifiers use feedback resistances of 10 kΩ to 10 MΩ (1 µA in → 10 mV to 10 V out); current-shunt monitors effectively realize 0.1–10 V/A after amplification; and textbook problems typically use rm of 1–1000 Ω. The ideal element drops zero volts across its current-sensing branch and has zero output impedance. SPICE example: Vsense inserted at 0 V in the monitored branch, then H1 out 0 Vsense 1k gives 1 V of output per milliamp sensed.
Where the CCVS (Dependent Voltage Source) symbol is used
- Transimpedance amplifier models converting photodiode, PMT, or DAC output currents into voltages
- Current-shunt monitoring circuits that report a voltage proportional to a measured load current
- Two-port network theory: forward transfer elements of z-parameter and hybrid-parameter equivalent circuits
- SPICE behavioral modeling where a branch current must set a node voltage (H element with a 0 V sense source)
- Hall-effect and current-transformer measurement chains modeled at system level as volts-per-amp blocks
- Textbook dependent-source exercises in mesh analysis, where the controlling variable is a mesh current
Example
To model a photodiode transimpedance stage in SPICE, the photodiode current is routed through the CCVS's controlling branch — its Ctrl In and Ctrl Out pins in series with the diode via a 0 V sense source — and the diamond's + and − output pins deliver vout = rm·ix with rm = 100 kΩ: the cards Vsense pd_a n1 0 and H1 out 0 Vsense 100k produce 100 mV of output for every microamp of photocurrent.
Key facts
- The CCVS equation is vout = rm·ix; rm is transresistance (transimpedance) in ohms — volts of output per amp of controlling current.
- Symbol: diamond (dependent) with ± inside (voltage output); the controlling current flows through a designated series branch (Ctrl In / Ctrl Out).
- SPICE letter H denotes the CCVS; the controlling current must pass through a named voltage source, e.g. H1 out+ out− Vsense 1k.
- A 0 V dummy voltage source is the standard SPICE trick for sensing the controlling current without disturbing the circuit.
- The ideal CCVS drops zero volts across its sensing branch (perfect ammeter) and has zero output impedance (perfect voltage source).
- The transimpedance amplifier — op-amp with feedback resistor converting input current to output voltage — is the everyday physical realization of a CCVS.
- Among the four dependent sources it is the least common in device models but central to current-measurement and two-port z-parameter representations.
- Like all dependent sources it stays active during Thevenin/Norton analysis; only independent sources are zeroed.
Frequently asked questions
What is the difference between a CCVS and a VCVS?
Both output a voltage (diamond with ± inside), but the controlling variable differs. A VCVS senses a VOLTAGE vx across two nodes with an open-circuit control port and outputs μ·vx (gain dimensionless, V/V). A CCVS senses a CURRENT ix flowing through a branch — ideally with zero voltage drop — and outputs rm·ix (gain in ohms, V/A). Check the gain expression: vx means VCVS, ix means CCVS.
Why are CCVS gain units ohms?
Because the gain converts amps into volts: rm = vout/ix has units V/A, which is the ohm. The quantity is called transresistance or transimpedance — 'trans' because the current and the voltage are at different ports, unlike an ordinary resistor where V and I share one branch. A transimpedance amplifier with a 1 MΩ feedback resistor is a CCVS of one million ohms: 1 µA in gives 1 V out.
How do I write a CCVS in SPICE?
Use the H element, and route the controlling current through a voltage source so SPICE can measure it. If no real voltage source exists in that branch, insert a 0 V dummy: Vsense a b 0 followed by H1 out+ out− Vsense 1k creates vout = 1000 × I(Vsense). The zero-volt source behaves as an ideal ammeter and does not alter circuit operation. E/G/H/F is the full dependent-source letter set — H is specifically the CCVS.
What real circuit does a CCVS model?
The transimpedance (current-to-voltage) amplifier is the canonical example: an op-amp with a feedback resistor Rf converts an input current from a photodiode or DAC into vout = −Rf·iin. Current-shunt monitors, current-transformer burden circuits, and Hall-sensor chains are also volts-per-amp blocks. In network theory, the forward-transfer branches of z-parameter and h-parameter two-port models are written as CCVS elements.
How is the controlling current shown on a CCVS schematic symbol?
As a designated branch — often a short loop or wire segment labeled with the current ix on the control side of the symbol (the Ctrl In and Ctrl Out terminals) — rather than the +/− sensing pair used by voltage-controlled sources. The diamond's value annotation (e.g. '50·ix') names that current. In textbook problems the controlling branch is frequently elsewhere in the circuit entirely, identified only by the ix label on some element's wire.
Related symbols
- Amplifier Block symbol
- Current Source symbol
- Current Transformer (CT) symbol
- Op-Amp symbol
- Transimpedance Amplifier symbol
- Voltage Source (DC) symbol
Place the CCVS (Dependent Voltage Source) symbol on a wiring diagram or schematic in the free online circuit diagram maker — no download required.