component
CD4022B Octal Counter
Public Made by Adomby adom
Divide-by-8 (octal) Johnson counter with 8 decoded outputs, 4000B CMOS.
main
Ray
cd4022: component.models_3d pose record per STEP (Z-up, seated z=0, pad-centre origin, identity binding)
2926d45
26d ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
{
"schema_version": 1,
"type": "component",
"slug": "cd4022",
"title": "CD4022B Octal Counter",
"brief": "Divide-by-8 (octal) Johnson counter with 8 decoded outputs, 4000B CMOS.",
"version": "0.1.0",
"license": "CC-BY-SA-4.0",
"tags": [
"logic",
"counter",
"johnson",
"divide-by-8",
"4000-series",
"ti",
"soic-16"
],
"component": {
"mpn": "CD4022B",
"manufacturer": "Texas Instruments",
"package": "SOIC-16",
"pin_count": 16,
"category": "Logic",
"subcategory": "Counter",
"datasheet": "https://www.ti.com/lit/ds/symlink/cd4022b.pdf",
"parts": {
"symbol": "cd4022.kicad_sym",
"footprint": "cd4022.kicad_mod",
"model_3d": "cd4022-etched.glb",
"model_3d_plain": "cd4022.glb",
"model_3d_step": "cd4022-etched.step",
"model_3d_step_plain": "cd4022.step",
"lbr": "cd4022.lbr"
},
"distributor_links": {},
"pins": [
{
"number": "1",
"name": "Q1",
"type": "output",
"description": "Decoded output '1'. High for one clock cycle when count = 1; otherwise low. CMOS push-pull, sourcing/sinking a few mA."
},
{
"number": "2",
"name": "Q0",
"type": "output",
"description": "Decoded output '0'. High for one clock cycle when the counter is at zero (also on reset)."
},
{
"number": "3",
"name": "Q2",
"type": "output",
"description": "Decoded output '2'. High for one clock cycle when count = 2."
},
{
"number": "4",
"name": "Q5",
"type": "output",
"description": "Decoded output '5'. High for one clock cycle when count = 5."
},
{
"number": "5",
"name": "Q6",
"type": "output",
"description": "Decoded output '6'. High for one clock cycle when count = 6."
},
{
"number": "6",
"name": "NC",
"type": "unconnected",
"description": "No internal connection on the CD4022B (this pin is used on CD4017B for a decoded output)."
},
{
"number": "7",
"name": "Q3",
"type": "output",
"description": "Decoded output '3'. High for one clock cycle when count = 3."
},
{
"number": "8",
"name": "VSS",
"type": "power_in",
"description": "Negative supply / ground reference (0 V)."
},
{
"number": "9",
"name": "NC",
"type": "unconnected",
"description": "No internal connection on the CD4022B (this pin is a decoded output on CD4017B)."
},
{
"number": "10",
"name": "Q7",
"type": "output",
"description": "Decoded output '7'. High for one clock cycle when count = 7."
},
{
"number": "11",
"name": "Q4",
"type": "output",
"description": "Decoded output '4'. High for one clock cycle when count = 4."
},
{
"number": "12",
"name": "CARRY_OUT",
"type": "output",
"description": "Carry output. Completes one full cycle every 8 clock inputs; used to ripple-clock the next device in a cascade."
},
{
"number": "13",
"name": "CLOCK_INHIBIT",
"type": "input",
"description": "Active-high clock inhibit. When high, counter advancement via the CLOCK line is disabled. Setup time tS = 230/100/70 ns at 5/10/15 V."
},
{
"number": "14",
"name": "CLOCK",
"type": "input",
"description": "Schmitt-triggered clock input. Counter advances on the positive-going transition when CLOCK INHIBIT is low. fCL_max = 2.5/5/5.5 MHz at 5/10/15 V."
},
{
"number": "15",
"name": "RESET",
"type": "input",
"description": "Active-high asynchronous reset. Clears the counter to zero (Q0 high) while held high. Minimum pulse width 260/110/60 ns at 5/10/15 V."
},
{
"number": "16",
"name": "VDD",
"type": "power_in",
"description": "Positive supply, 3-18 V (absolute max VDD-VSS = 20 V)."
}
],
"provenance": {
"extractor": "ds2sf",
"datasheet": {
"url": "https://www.ti.com/lit/ds/symlink/cd4022b.pdf",
"pages": 22,
"sha256": "33e12c4baa664425",
"source_tier": "mfr"
},
"cad": "KiCad official (CC-BY-SA 4.0)",
"pins": {
"total": 16,
"described": 16,
"cites_pages": true,
"refuses_to_fabricate": true
}
},
"viewers": {
"symbol": "viewers/symbol.html",
"footprint": "viewers/footprint.html"
},
"logic": {
"family_id": "CD4022",
"logic_family": "CD4000",
"function_code": "4022",
"function_class": null,
"function_name": null,
"manufacturer": "Texas Instruments",
"is_specialty": false
},
"models_3d": [
{
"file": "cd4022.step",
"role": "plain",
"up": "Z",
"units": "mm",
"origin": "footprint origin = pad-pattern centre",
"seat": "z = 0",
"extents_mm": [
6.0,
9.9,
1.75
],
"zmin_mm": -0.0,
"centre_offset_mm": 0.0,
"footprint_binding": "identity",
"sha256": "d5eeddb4c0b304dc61950919b126fc61d7586abd5f16ab71a2a79759ec6498bf",
"checked": "2026-10-07",
"checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
},
{
"file": "cd4022-etched.step",
"role": "eda",
"up": "Z",
"units": "mm",
"origin": "footprint origin = pad-pattern centre",
"seat": "z = 0",
"extents_mm": [
6.0,
9.9,
1.75
],
"zmin_mm": -0.0,
"centre_offset_mm": 0.0,
"footprint_binding": "identity",
"sha256": "c6c04bf3ccfcae704107f2b6f3c30c28b8a1724056fc6c38de72cc2569b5cee6",
"checked": "2026-10-07",
"checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
}
]
},
"metadata": {
"specs": {
"Type": "Divide-by-8 Johnson counter",
"Logic family": "4000B (CMOS)",
"Outputs": "8 decoded (1-of-8) + carry-out",
"Supply voltage": "3 V to 18 V",
"Operating temperature": "-55 C to 125 C"
}
},
"sections": [
"hero",
"viewers",
"readme",
"breadcrumbs",
"info"
],
"discovery_triggers": [
"octal counter",
"divide by 8",
"Johnson counter",
"sequencer",
"1-of-8 output"
],
"discovery_pitch": "A divide-by-8 Johnson counter that lights one of eight decoded outputs per clock, for sequencers and 1-of-8 selection.",
"author": {
"name": "Ray",
"email": "[email protected]"
},
"dependencies": {},
"hero": {
"type": "image",
"path": "docs/hero.png"
},
"files": [
"page.json",
"README.md",
"cd4022.kicad_sym",
"cd4022.kicad_mod",
"cd4022.glb",
"cd4022.step",
"cd4022.lbr",
"docs/hero.png",
"docs/cd4022-datasheet.pdf",
"viewers/symbol.html",
"viewers/footprint.html",
"cd4022-etched.step"
],
"variants": [
{
"mpn": "CD4022BE",
"kind": "unknown"
},
{
"mpn": "CD4022BF3A",
"kind": "unknown"
},
{
"mpn": "CD4022BNSR",
"kind": "unknown"
},
{
"mpn": "CD4022BPW",
"kind": "unknown"
},
{
"mpn": "CD4022BPWR",
"kind": "unknown"
}
]
}