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

egorman44

Свой
  • Постов

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

  • Посещение

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


  1. По мере погружения , появляются еще некоторый вопросы , требующие разъяснения Хотел спросить о генерации сигнала сброса . Порыскал на просторах и нашел в книге Полякова (это в главе посвященной верификации) следующее: initial begin RESET_INV = 1'b0; repeat(10) @(posedge SCLK); RESET_INV <= 1'b1; end Почему товарищ использует в одном initial блоке blocking и non-blocking assignment или для верификации так можно ? Я переправил , RESET_INV = 1'b1; Вроде бы работает, но посмотрев RTL Viewer не увидел никакой синтезируемой схемы, привязанной к выходу RESET_INV, а лишь высокий уровень 1'h1 . Хотелось , бы услышать как ПРАВИЛЬНО исполнять сие?
  2. По мере чтения возникают вопросы. Во-первых правильно ли я понял, для синхронизации сигнала мне необходим синхронизатор (например два последовательных D- триггер). Он выглядит следующим образом: always @(posedge SCLK) begin a1 <= SDOFS; a2 <= a1; a3 <= a2; SDOFS_risingedge <= ((~a3)&a2); end В таком случае , задержка при определение переднего фронта SDOFS составит 2 такта синхросигнала. Как мне говорит даташит "SDOFS Framing Signal Output for SDO Serial Transfers. The frame sync is one bit wide and is active one SCLK period before the first bit (MSB) of each output word. SDOFS is referenced to the positive edge of SCLK. SDOFS is in three-state when SE is low." , После импульса SDOFS , длинной один такт SCLK, сразу следует первый бит посылки. Т.е. должен ли я исправить код на always @(posedge SCLK) begin a1 <= SDOFS; a2 <= a1; SDOFS_risingedge <= ((~a2)&a1); end чтобы не пропустить первый бит ? Или есть другие решения ?
  3. премного благодарствую ! вот здесь капиталисты тоже рассматривают почему inferred latch есть плохо :rolleyes: http://electronics.stackexchange.com/quest...red-latches-bad
  4. Господа спасибо за пищу для размышлений ! будем читать значит и вопрос конечно офтоп , но хотелось бы очень узнать , как ближе перевести понятие "inferred latches" , что защелка это понятно, но какой смысл вкладывают в слово inferred ?
  5. Добрый день всем! Начал потихоньку осваивать Verilog . Сейчас хотелось сделать проектик для работу с микросхемой AD73322 (front-end processor для речи и телефонии). Протокол обмена между fpga и AD73322 следующий: 1. Ждать импульса на линии SDOFS , говорит о том что сейчас будет прием, AD73322 будет передавать пакет fpga 2. Затем принять 16 бит 3. Сделать чего- нибудь с ними(принятыми битами) 4. Сформировать импульс на линии SDIFS , говорит о том что сейчас будет передача ,AD73322 будет принимать пакет от fpga 5. Передать 16 бит как я вижу задачу можно решить с применением FSM(Finite State Machine) дизайна . Просмотрев мануал "Synthesizable Finite State Machine Design Techniques Using the New SystemVerilog 3.0 Enhancements", я остановился на методе с применением 3-х always блоков. вопросы следующие: 1. Правильно ли решать подобную задачу с помощью Finite State Machine Design? Есть ли альтернативы? 2. Допусти у меня есть состояния wait_for_SDOF и ready_to_receive, переход из первого во второй осуществляется , по импульсу на линии SDOFS , как это должно выглядеть ? Мой вариант : always @(state,SDOFS) begin next = 'bx; case (state) wait_for_SDOFS: if (SDOFS) next = ready_to_receive; else next = wait_for_SDOFS ; ... endcase end не надо ли использовать конструкцию posedge SDOFS , так как мне нужен именно переход из "0" в "1", но как использовать его в блоке always, если я его запихну туда, ничего хорошего думаю не получиться. Вообщем как поступают при ожидании синхронизирующего сигнала , как и в моей ситуации ?
  6. Уважаемый Proton не могли бы выложить rf_v2 еще раз, а то в той местности уже пусто :crying: Буду Вам очень признателен.
  7. Большое спасибо товарищи! Все вроде бы работает)
  8. ага спасибо) а вы как думаете откуда я состояние флага узнал в голове что ль просимулировал?
  9. Прерывание от таймера

    Здравствуйте дорогие форумчане. Разбираюсь с мк Atmel. Хотел выработать прерывание при достижении счетчиком какого либо числа. В регисры OCR1B(H/L) записал число до которого надобно считать, но не досчитав до заданного числа, флаги регистра TIFR1 : OCF1A, OCF1B, OCF1C получают значения логической единицы. После того как я инициализировал маску и разрешил прерывание программа уходит на вектор прерываний. необходимо ли сбрасывать флаги прерываний от МК или косяк в инициализации таймера/счетчика. .include "m640def.inc" ; .list ; .def temp=R17 ; .def rab=R18 ; .equ kdel=30 ; ;------- reservation of call .dseg ; .org 0x200 ; buf: .byte 1 ; ;------- begining of program code .cseg ; .org 0 ; ;------- redefining of interrupt vector start: jmp init; Reset Handler nop ; reti ; IRQ0 Handler nop ; reti ; IRQ1 Handler nop ; reti ; IRQ2 Handler nop ; reti ; IRQ3 Handler nop ; reti ; IRQ4 Handler nop ; reti ; IRQ5 Handler nop ; reti ; IRQ6 Handler nop ; reti ; IRQ7 Handler nop ; reti ; PCINT0 Handler nop ; reti ; PCINT1 Handler nop ; reti ; PCINT2 Handler nop ; reti ; Watchdog Timeout Handler nop ; reti ; Timer2 CompareA Handler nop ; reti ; Timer2 CompareB Handler nop ; reti ; Timer2 Overflow Handler nop ; reti ; Timer1 Capture Handler nop ; reti ; Timer1 CompareA Handler nop ; jmp prtim ; Timer1 CompareB Handler nop ; reti ; Timer1 CompareC Handler nop ; reti ; Timer1 Overflow Handler nop ; reti ; Timer0 CompareA Handler nop ; reti ; Timer0 CompareB Handler nop ; reti ; Timer0 Overflow Handler nop ; reti ; SPI Transfer Complete Handler nop ; reti ; USART0 RX Complete Handler nop ; reti ; USART0,UDR Empty Handler nop ; reti ; USART0 TX Complete Handler nop ; reti ; Analog Comparator Handler nop ; reti ; ADC Conversion Complete Handl nop ; reti ; EEPROM Ready Handler nop ; reti ; Timer3 Capture Handler nop ; reti ; Timer3 CompareA Handler nop ; reti ; Timer3 CompareB Handler nop ; reti ; Timer3 CompareC Handler nop ; reti ; Timer3 Overflow Handler nop ; reti ; USART1 RX Complete Handler nop ; reti ; USART1,UDR Empty Handler nop ; reti ; USART1 TX Complete Handler nop ; reti ; 2-wire Serial Handler nop ; reti ; SPM Ready Handler nop ; reti ; Timer4 Capture Handler nop ; reti ; Timer4 CompareA Handler nop ; reti ; Timer4 CompareB Handler nop ; reti ; Timer4 CompareC Handler nop ; reti ; Timer4 Overflow Handler nop ; reti ; Timer5 Capture Handler nop ; reti ; Timer5 CompareA Handler nop ; reti ; Timer5 CompareB Handler nop ; reti ; Timer5 CompareC Handler nop ; reti ; Timer5 Overflow Handler nop ; reti ; USART2 RX Complete Handler nop ; reti ; USART2,UDR Empty Handler nop ; reti ; USART2 TX Complete Handler nop ; reti ; USART3 RX Complete Handler nop ; reti ; USART3,UDR Empty Handler nop ; reti ; USART3 TX Complete Handler nop ; int_ret: reti ;------ initialization module init: ldi r16, high(RAMEND) ; out SPH,r16 ; Set Stack Pointer to top of RAM ldi r16, low(RAMEND) ; out SPL,r16 ; ;------ I/O ports initialization ldi temp,0xFF ; sts DDRL,temp ; ;------ Timer 1 initialization ldi temp,0x01 ; sts TCCR1B,temp ; ldi temp,high(kdel); sts OCR1BH,temp ; ldi temp,low(kdel); sts OCR1BL,temp ; ;------ define interrupt mask ldi temp,0x04 ; sts TIMSK1,temp ; ;------ comparator initialization ldi temp,0x80 ; out ACSR,temp ; sei ; ;------ begining of main function main: ldi rab,0x80 ; ldi temp,0xFF ; sts buf,rab ; eor temp,rab ; sts PORTL,temp ; m1: rjmp m1 ; ;------ interrupt subprogram prtim: push temp ; push rab ; lds rab,buf ; ;------ left shift p1: lsr rab ; brcc p3 ; ldi rab,0x80 ; p3: ldi temp,0xFF ; eor temp,rab ; sts PORTL,temp ; sts buf,rab ; pop rab ; pop temp ; reti ;
  10. так и пришлось поступить. спасибо ребят
  11. дак там и при ширине 2 мм , уже чем площадки получается --- т.е. как я понял нет такой возможности провести 2 мм трассу от пункта А к Б не сужая ее у контактной площадки?
  12. Добрый день товарищи. Подскажите как убрать ограничение ширины трасс. Мне надобно провести дорожку шириной 2 мм. в ces я убрал ограничение между трассой и падом, но теперь из-за скругления трассы , она наезжает на соседнюю контактную площадку, при попытке увеличение ширины трассы. expedition ругается: "At least one width could not be performed: it causes a DRC violation'
  13. нельзя ли поподробнее ? чего с этим keyin делать?
  14. Здравствуйте люди. подскажите пожалуйста есть ли возможность в expedition разместить компоненты группой на плату, допустим прямоугольной сеткой с одинаковыми расстояниями между компенонтами.?
  15. есть некие компоненты которые он просто не может рисовать, думаю может производители других продуктов позаботились, разнообразя стандартные наборы smd и pth
  16. и снова здравствуйте :) Товарищи подскажите есть ли аналоги у менторовского LP Wizzard ? с помощью которых можно творить land patterns и экспортировать , допустим в тот же самый mentor?
  17. Добрый день господа, а день добрый- выходной! Подскажите пожалуйста , у меня допустим имеется микросхема с двумя одинаковыми выводами , к примеру gnd. Могу ли я в symbol editor нарисовать один пин gnd, а затем в pаrt editor присвоить два контакта этому выводу gnd? и что такое number of slots in component - при выгрузе символа из symbol editor? заранее спасибо
  18. точно точно) в воодушевляющем порыве , перепутал все !
  19. Ребяты , господа , товарищи!!!! это гениально!!!) теперь все встает на свои места) ведь ясно же ш что с коллектора T2, Т1 берет напряжение смещения!!! УРА, УРА ,УРА!!! снимаю шляпу перед всеми!!! СПАСИБО !!!
  20. Добрый день господа! любители и профессионалы в области электроники ! Изучаю учебник М.Х. Джонса Электроника практический курс. Столкнулся со схемой описанной в параграфе 5.9.6. Малошумящий двухтранзисторный усилитель напряжения. Возник вопрос как работает сея штуковина. Не пойму как задается коллекторный ток Т1=100 мкА, не вижу как задается смещение транзистора T1. Интересно будет ли работать данная схема?! Не пойму принцип работы обратной связи по постоянному току (за счет резистора R4),стабилизирущей режим покоя. Пожалуйста помогите чем сможете?)
  21. Господа помогите разобраться. Досталось мне переделать проект, заменил компоненты в DC скомпелировал CDB, сделал Package Design, в Exp провел прямую аннотацию, стал трассировать, вкл cross probe , и получил что ref des компонента в expedition не совпадает с ref des в DC. что делать? ---- да и Routed_pins до сих пор не активна
  22. да если бы я сам покупал эти вилки всем спасибо!
  23. боюсь что нет)) ибо очень много в наличии у меня n канальных...
×
×
  • Создать...