Перейти к содержанию
    

pav2051

Участник
  • Постов

    23
  • Зарегистрирован

  • Посещение

Весь контент pav2051


  1. Все, у меня появилось просветление, я вроде бы понял)). Всем большое спасибо за помощь ).
  2. Конденсатор в этот момент подключен к операционнику с бесконечным входным сопротивлением и полосой 1 кГц, т.е. мы проводим измерение. На проводящих обкладках конденсатора же будет движение вдоль них, т. е. будут наблюдаться флуктуации.
  3. При комнатной температуре для конденсатора 1 пФ (для интегралльного исполнения немаленькая емкость) получается спектральная плотность шума 4 нВ^2 на герц. В полосе 1 кГц получаем около 64 мкВ. Ощутимое значение чтобы его не учитывать.
  4. В википедии (https://en.wikipedia.org/wiki/Johnson–Nyquist_noise). Цитата: "Any system in thermal equilibrium has state variables with a mean energy of kT/2 per degree of freedom. Using the formula for energy on a capacitor (E = ½CV2), mean noise energy on a capacitor can be seen to also be ½C(kT/C) = kT/2. Thermal noise on a capacitor can be derived from this relationship, without consideration of resistance." Даже если отбросить количественные оценки, ведь на конденсаторе есть заряд - значит есть их тепловые флуктуации, а значит мы должны видеть флуктуации напряжения на нем.
  5. Доброго времени суток. Разъясните кто-нибудь, пожалуйста, кто понимает, почему считается что идеальный конденсатор сам по себе не является источником шума при анализе электрических схем? Ведь так или иначе на его обкладках имеется некоторый заряд, который имеет тепловые флуктуации с энергией CV^2 = kT, т. е. на нем мы должны видеть спектральную плотность шума равную kT/C. Почему при анализе шумов, например, track-and-hold схемы считается что в процессе хранения сам конденсатор не шумит, а только лишь хранит мгновенное значение напряжения в момент размыкания ключа?
  6. Как то так? Сигнал SEL вырабатывается дешифратором и выбирает соответствующую ячейку. Сигнал W/R вместе с SEL включает соответствующие буферы на портах ячейки или переводит их в Z-состояние. При этом при чтении сигнал WL всегда в 1, а при записи идентичен тактовому сигналу CLK.
  7. Интересно. Может, тут дело в механических напряжениях, возникающих в тензочувствительных элементах. Чем меньше зазоры между элементами - тем сильнее механические напряжения, которые могут релаксировать со временем.
  8. Делал 12-разрядный, но это далеко не предел, размер единичной емкости если правильно помню - был что-то около 30 мкм^2
  9. Как вы правильно заметили, выбор единичного конденсатора осуществляется исходя из требуемых параметров: шум, быстродействие, нелинейность, потребление, площадь и т. п. Нужно оценивать из того, какие параметры для вас важнее и их пределы. Чем больше размер конденсатора - тем меньше шум kT/C, лучше линейность (так как меньше разброс), но будет хуже быстродействие, больше площадь, больше потребление (так как больше величина заряда, который гоняется между конденсаторами). Кроме того, для fully-differential архитектуры минимальный размер может быть выбран меньше (если при таких размерах по параметрам все устраивает), так как влияние паразитных емкостей ключей значительно снижается. Топологию же следует выбирать по типу centroid, как конкретно перемешивать - тут лучше ответит на этот вопрос моделирование с экстракцией для той или иной топологии.
  10. Да, монте-карло лишь следует статистическим моделям. Есть модели разброса от лота к лоту, то есть для разных запусков, а есть матчинг-модели, которые определяются разбросом между компонентами на кристалле (как правило, подразумевая, что они согласованы - перемешаны и т. п.)
  11. Если нужно точно разделить напряжение, то перемешивать необходимо, иначе плечи делителя будут иметь больший разброс.
  12. Да, тут действительно нужно уточнить какой разброс для резисторов по вашей технологии. Если есть статистические модели для них - можно провести монте-карло моделирование и определить. После чего оценить вклад металлических шин в сопротивление резистора. Если он меньше статистического разброса - то и заморачиваться с согласованием не стоит. В противном случае нужно пытаться разместить резисторы и разводку, чтобы она была симметрична относительно согласуемых частей, при этом не стоит забывать про переходные отверстия и контакты.
  13. Выход драйвера скорее всего представляет мощный push-pull каскад (в документации к нему должна быть информация) и затвор транзистора будет притянут к земле через очень малое сопротивление в случае, когда транзистор закрыт и выбросы на стоке не должны вызывать сколь значительные возмущения на затворе, способные открыть транзистор.
  14. Если резисторы из поликристаллического кремния, то при прохождении через них тока выше некоторой пороговой плотности может наблюдаться эффект изменения сопротивления. Это связано с изменением свойств границ между кристаллитами (монокристаллическими гранулами). Физика этого явления до сих пор полностью не ясна, но этот эффект имеет место быть. Я когда-то занимался изучением этого эффекта как раз с целью применения для подстройки начального разбаланса моста в интегральных датчиках давления.
  15. Для схемотехников, занимающихся проектированием интегральных схем очень полезный журнал - IEEE Journal of Solid-State Circuits. Для себя много полезных схемотехнических решений нашел там. Через sci-hub тоже качается очень хорошо ).
  16. На практике легирование эмиттера делают больше, чем коллектора. Да, можно вместо эмиттера использовать коллектор и наоборот, но в этом случае коэффициент передачи тока у транзистора будет меньше.
  17. Переход база-эмиттер находится в прямом включении, потенциальный барьер уменьшается и свободные носители заряда (электроны для npn-транзистора или дырки для pnp) устремляются в область базы в результате диффузионного процесса (для базы эти носители заряда - неосновные и их концентрация значительно меньше, чем в эмиттере - поэтому происходит их диффузия). Попадая в базу эти носители будут рекомбинировать (электрон встречается с дыркой, т. е. прицепляется к атому со свободной вакансией). Но поскольку база делается тонкой, то очень малая часть носителей рекомбинирует, так как не успевают (на рекомбинацию нужно определенное время) - пролетают базу и втягиваются в коллектор полем обратносмещенного перехода коллектор-база. В этом случае механизм перемещения носителей не диффузионный, а дрейфовый (потенциальный барьер между коллектором и базой большой, но носители устремляются в коллектор, поскольку попадают в электрическое поле коллекторного перехода).
  18. Очень хорошая книга для начинающих - R. Jacob Baker, CMOS Circuit Design, Layout and Simulation. В ней преимущественно про схемотехническое проектирование, но также есть немного и про технологию, физику МОП-транзистора и разработку топологии. Для меня она одна из основных книг, по которым я изучал проектирование ИС.
  19. Ну для начала нужно определиться что нужно подавать на входы блока АЛУ для того, чтобы проверить полностью функциональность модуля и какой ожидаем результат на выходе. Я бы выписал по пунктам операции, которые нужно проверить и для каждой подумать какие возможны случаи исхода этой операции. Например, первым делом хотим протестировать операцию сложения 2 чисел со знаком, нужно проверить случаи когда оба операнда положительные, когда тот или другой отрицательны и когда оба операнда отрицательны + нужно смоделировать ситуацию с переполнением и убедиться что флаг переполнения устанавливается, и так для каждой операции. Собственно эти шаги и реализовываете на verilog, подаете на вход известные воздействия и сравниваете выходной отклик с ожидаемым. Необходимо создать так называемый тестбенч - модуль для тестирования того или иного функционального блока, там делаете инстанс модуля АЛУ и задаете на него воздействия. Как-то так: `timescale 1ns/100ps // Задаем величину временного шага и его точность module tb_alu; reg [7:0] in1; // Объявляем необходимые сигналы reg [7:0] in2; reg [1:0] op; wire [7:0] out; wire ovl; reg clk; initial begin // Блок initial исполняется единожды // sum clk = 0; in1 = 8'h0A; // Задаем операнды на входе in2 = 8'hF9; op = 2'b00; // Задаем код операции #10 // Ждемс необходимое время, когда на выходе должны появиться данные (пусть будет 10 нс) if ((out == 8'h03) && (ovl == 1'b1)) begin // Сравниваем выходные сигналы с ожидаемыми значениями $display("Test ok"); // И выводим на экран результат выполнения тестов end else begin $display("Test fail"); end ... // Тестируем дальше что нужно $finish; end always #0.5 clk = ~clk; // Генерируем тактовый сигнал с периодом 1 нс alu i0(.clk(clk), .in1(in1), .in2(in2), .op(op), .ovl(ovl), .out(out)); endmodule Ну и стандарт верилога в помощь + море книг в инете по верилогу, удачи )
  20. Для задания разрядности входных портов модуля можно поступить следующим образом: module my_module(in1, in2, out); parameter PAR_IN1 = 8; // Описываем параметры и задаем значения по умолчанию parameter PAR_IN2 = 8; input [PAR_IN1-1:0] in1; // Описываем входные порты и указываем их разрядность input [PAR_IN2-1:0] in2; ... endmodule Теперь при создании инстанса этого модуля можно переопределить заданные по умолчанию значения (переопределяемые параметры и их значения указываются в скобках после символа #): my_module #(.PAR_IN1(4), .PAR_IN2(12)) inst0(.in1(in1), .in2(in2), .out(out));
  21. Правильно ли я понимаю, если оба триггера тактируются от одного источника, достаточно будет задать только период для клока (create_clock -period 20.0 [get_ports clk])? Входной порт данных пока в расчет не беру, полагаем, что на первый триггер данные приходят во время.
  22. Доброго времени суток. Цифровой схемотехникой и темой ПЛИС занимаюсь не так давно, поэтому прошу знающих людей пояснить следующую ситуацию. Имеем код, синтезируемый в два последовательно соединенных триггера: always @(posedge clk) begin z <= y; y <= x;end может ли при разводке возникнуть ситуация, когда новые данные на вход второго триггера придут раньше, чем клок на второй триггер, т. е. новые данные появятся на выходе второго триггера не по второму фронту, как ожидаем, а по первому? Или же трассировщик не допустит такой ситуации? Аналогичный вопрос для другого примера: always @(posedge clk) case (state) ... 1: begin z <= in1 + in2; state <= 2; end 2: begin z <= in1 - in2; state <= 3; end ... endcase Если этот код синтезируется в следующую конструкцию, то допустима ли ситуация, когда состояние автомата успеет измениться и пройти через логику на вход триггера до прихода того же самого фронта клока на этот триггер?
×
×
  • Создать...