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.