An implantable infusion pump possesses operational functionality that is,
at least in part, controlled by software operating in two processor ICs
which are configured to perform some different and some duplicate
functions. The pump exchanges messages with an external device via
telemetry. Each processor controls a different part of the drug infusion
mechanism such that both processors must agree on the appropriateness of
drug delivery for infusion to occur. Delivery accumulators are
incremented and decremented with delivery requests and with deliveries
made. When accumulated amounts reach or exceed, quantized deliverable
amounts, infusion is made to occur. The accumulators are capable of being
incremented by two or more independent types of delivery requests.
Operational modes of the infusion device are changed automatically in
view of various system errors that are trapped, various system alarm
conditions that are detected, and when excess periods of time lapse
between pump and external device interactions.