можно ли как то более понятно нарисовать схему D триггера с асинхронным сбросом?
Да, можно, и показав в вашем комментарии схему рис.1.54 из книжки В. Шило, вы как раз дали такой более понятный рисунок. Более понятным его делают крупные чёткие точки на соединениях, не дающие глазам разбегаться по перекрещивающимся линиям, как это происходит на вашем рисунке.
никак не могу разобраться в нем, слишком запутаной для меня кажется эта схема.
Схема из 6 логических элементов доступна даже для разбора "на пальцах", но если не получается, то попробуйте расписать таблицы истинности для всех статических состояний. Если исключить асинхронные входы -R и -S, то понадобится всего-то четыре таблицы. Кроме того, в кнжке В. Шило двумя страницами ранее подробно описано действие подобных двухступенчатых триггеров (они ещё называются "ведущий-ведомый" или "master-slave"). Также там есть важное замечание о том, что для нормальной работы такого триггера в момент фронта и спада тактового сигнала С сигнал данных D не должен меняться (точнее, между ними должен быть некий защитный интервал длительностью не менее двойной стандартной задержки для типовой ТТЛ-логики).
непонятно почему схему нарисовали используя именно NAND а не NOR.
Двоичной логике присущ некий дуализм, в соотвествии с которым если изменить тип базового элемента с NAND на NOR (или наоборот) и заодно инвертировать все входные и выходные сигналы, то логическая функция не изменяется. Это легко понять из простейшего примера - двухвходовойт элемент 2И-НЕ для входных сигналов логической единицы реализует функцию И-НЕ, а для сигналов логического нуля этот же самый элемент реализует функцию ИЛИ-НЕ. Не верите? Убедитесь на таблице истинности.
Так что абсолютно без разницы, на чём реализовать конкретную логическую функцию - да на чём угодно, лишь бы удобно было разработчику самих элементов и тому, кто их применяет.
почему там аж в трех местах подается комплементарный R
Дык ведь этот R и есть тот асинхронный сброс (приведение в ноль или в исходное состояние), из-за которого этот триггер имеет такое название. Асинхронный - это значит, что сигнал R (кстати, и S тоже, если такой вход есть) можно подавать в любое время, независимо от состояния прочих сигналов, в отличие от сигналов C и D, требующих защитного интервала.