10. Pause state / Cancellation of transfer pause
ถ้าคำสั่งให้เปิดใช้งาน individual-channel operation ถูกส่งไปถึง a channel ที่อยู่ใน Pause state ก่อนแล้วเนื่องจากคำสั่งที่ส่งให้ individual-channel operation ไปหยุดพัก, channel นั้นจะกลับคืนสู่ Transfer state. ถ้าคำสั่งให้เปิดใช้งาน all-channel operation ถูกส่งไปถึง channels ที่อยู่ใน Pause state ก่อนแล้วเนื่องจากคำสั่งที่ส่งให้ all-channel operation ไปหยุดพัก, channel เหล่านั้นจะกลับคืนสู่ Transfer state ถ้า the pause instructions ของทั้งคู่ถูกสั่งไว้ก่อนแล้่ว, ออกคำสั่งนี้จะยกเลิก the pause instructions ของทั้งคู่นั้น
หลังจากคำสั่งนี้, SS[2:0] ถูกเคลียร์เป็น "000" โดยทาง DMAC.
ถ้าคำสั่งให้เปิดใช้งาน individual-channel operation และ ถ้าคำสั่งให้เปิดใช้งาน all-channel operation ถุกออกมาใน Pause state, มันจะสั่งให้การหยุดพักถูกยกเลิกไป ถ้ามันถูกออกมาใน Disable state, ต้องเอาใจใส่ระมัดระวัง, เพราะมันอาจสั่งการ transfer ใหม่ให้สตาร์ทขึ้นมาได้. ดู Step 11 ใน the software procedure.
รูปที่ 4-3 แสดงตัวอย่างของกรณีที่คำสั่งที่ส่ง all-channel operation ไปหยุดพัก. การอธิบายของรูปเป็นดังต่อไปนี้
ณ ที่เริ่มแรก, ชาแนลทั้งสาม, ที่ชื่อว่า ch.0, ch.1 และ ch.2, กระทำการ transfer operations ของมันใน Block transfer mode. ch.2 สำเร็จการ transfer ของมันโดยสมบรณ์, เคลื่อนไปสู่ Disable state และเซต SS=101. จากนั้น, ch.0 และ ch.1 กระทำการ transfers สลับกันไป
ถ้าคำสั่งที่ส่ง all-channel operation ไปหยุดพักถูกออกมาจาก CPU ที่จุดนี้, ใช้การทำงานดังต่อไปนี้. ตามที่ ch.0 อยู่ภายใต้เวลา Transfer Gap, มันเคลื่อนไปสู่ Pause state โดยทันทีและเซต SS=111. ตามที่ ch.1 อยู่ในตอนกลางของ transfer operation, มันกระทำการ transfer จนกระทั่งถึงเวลาของ Transfer Gap ถัดไป, และจากนั้นเคลื่อนไปสู่ Pause state และเซต SS=111. ตามที่ ch.2 อยู่ใน Disable state, มันยังคงอยู่ใน Disable state ปราศจากการเปลี่ยน SS. DS ถูกเซต, เมื่อชาแนลทั้งหมดหยุดการทำงานของมัน
ต่อไป, ถ้าคำสั่งให้เปิดใช้งาน all-channel operation (คำสั่งที่ยกเลิกการหยุดพัก) ถูกออกมาจาก CPU, ใช้การทำงานดังต่อไปนี้. ch.0 และ ch.1 กลับคืนสู่ Transfer state และเคลียร์ SS[2:0] เป็น "000". ตามที่ ch.2 อยู่ใน Disable state (DE=1, EB=0), มันยังคงอยู่ใน state นั้นโดยปราศจากการสตาร์ทการทำงาน. เพราะการหยุดพักของชาแนลทั้งหมดได้ถูกยกเลิกแล้ว, DS ถูกรีเซต.