Я тоже реализовывал. В двух проектах. Без каких-либо буферов на входе, т.к. входное сопротивление встроенного компаратора и так достаточно большое. Линейность характеристики преобразования не измерял, т.к. особой точности измерения не требовалось. Да и диапазон измеряемых напряжений был достаточно узкий не более 1/3 от питания MSP430, которое являлось опорным напряжением. Всю программу писал на Си, но обязательно контролировал компиляцию самой функции измерения. Как ни странно, компилятор генерировал asm точно такой же как и в примере дается

Только однажды ассемблерной вставкой nop-а пришлось выровнять такты измерения.
Чтобы понять принцип действия сигма-дельта АЦП представьте себе емкость (сосуд) с двумя кранами: один сверху, а другой снизу. Краны могут открываться на строго определенное время, за которое из емкости вытекает (или втекает в нее) дозированное количество жидкости. Манипулируя этими дозами можно поддерживать заданный уровень жидкости в сосуде. Разница в количестве включений верхнего и нижнего крана за определенный интервал времени будет эквивалентом количества жидкости, находящейся в емкости. Вот и весь принцип работы сигма-дельта АЦП.