Jump to content

    

gosha

Свой
  • Content Count

    279
  • Joined

  • Last visited

Community Reputation

0 Обычный

About gosha

  • Rank
    Местный
  • Birthday 05/22/1972

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Recent Profile Visitors

2670 profile views
  1. Да не вопрос: Если поставить целое число, собирается (на форуме другие значения): https://forums.xilinx.com/t5/AI-and-Vitis-AI/DNNDK3-1-Installation-failed-on-Custom-Zynq-SoC-7020-platform/td-p/1058330 misc_clk_0: misc_clk_0 { #clock-cells = <0>; clock-frequency = <200000000>; compatible = "fixed-clock"; }; misc_clk_1: misc_clk_1 { #clock-cells = <0>; clock-frequency = <100000000>; compatible = "fixed-clock"; }; А у меня: misc_clk_0: misc_clk_0 { #clock-cells = <0>; clock-frequency = <100000000>; compatible = "fixed-clock"; }; misc_clk_1: misc_clk_1 { #clock-cells = <0>; clock-frequency = <148484848>; compatible = "fixed-clock"; }; Собирается с замечанием: "/memory node has a reg or ranges property but no unit name" Почему же у меня SDK так посчитал ? собираю example mcomms2/zed github AD Криворучки ? Готовый проект собрать не смог ?
  2. Один Аллах это знает. Ничего не менял в исходниках. Только собираю. Исходники tevice_tree скачал отсюдова, не исправлял: https://github.com/Xilinx/device-tree-xlnx/tree/xilinx-v2018.3 Делаю все как в учебном видео отсюдова: https://www.youtube.com/ Запуск Linux на SoC Zynq 7000 от Xilinx на примере ZedBoard
  3. dtc -I dts -O dtb -o system.dtb system-top.dts Error: system-top.dts:9.1-9 syntax error FATAL ERROR: Unable to parse input tree #include "zynq-7000.dtsi" #include "pl.dtsi" #include "pcw.dtsi" /*==========================================================*/ /include/ "zynq-7000.dtsi" /include/ "pl.dtsi" /include/ "pcw.dtsi" dtc -I dts -O dtb -o system.dtb system-top.dts Error: pl.dtsi:62.32-33 syntax error FATAL ERROR: Unable to parse input tree misc_clk_1: misc_clk_1 { #clock-cells = <0>; clock-frequency = <148484848.4848485>; compatible = "fixed-clock"; }; OS: Debian v 10.5 Для Vivado 2018 каким dtc собирать ? исправил #include на /include/ теперь ругается на clock-frequency = <148484848.4848485>; Что делаю не так ? device_tree_zedboard.tar.gz
  4. Сделал как в статье, результат вычислений не совпадает с разностью фаз в модели. (прикрепленная модель) phaze.pdf tone_16KHz008_simulink2018.slx
  5. есть F_F_T в библиотеке ? У меня для Xilinx, надо подключать NCO.v к моделируемому проекту, Патаму что передает параметры зашифрованному IP. NCO_x10.vhd XFFT.vhd Нужна регистрация для скачивания Vendor Library. Регистраяция бесплатно. Регистрировался давно. Сейчас, может быть, и не зарегистрируют. Если реально надо, и зарегистрироваться не удастся. По-пробую куда- нибудь выложить.
  6. Какую lib поставить ? Наименование м/сх Altera ? F_F_T.vhd - отсутсвует среди файлов в Вашем проекте Quartus ? Если есть, прикрепите.
  7. Спасибо ! В модели DDS сконфигурирванн в режим CONFIG. В прикрепленной желаемой модельке и в ПЛИС - в режиме STREAM phase_increment. Хотелось минимальное отличие модельки от ПЛИС. Вопрос: режиме STREAM phase_increment, valid<='1' : DDS в simulink не генерирует SIN ? А ПЛИС генерирует при аналогичных данных на входе ! Или "не умею готовить" ? Или так и задумано в simulink ?
  8. Прикрепите пример testbench. - Минимальный testbench с каким- нибудь простеньким проблемным криптованым IP. IP mentor - не intel (altera) ?
  9. У меня Xilinx. Берем только верхние wrapper xilinx IP, сгенерированные core_generator. И подключаем в проект. Прикрепленный проект - testnench c xilinx IP (wrapper xilinx IP скопированиы: \Test_WPP\range_measure\src\IP_Xilinx\) . Верхние wrapper xilinx IP - из core_generator (прикрепленный файл). Содержимое библиотек AHDL можно посмотреть(прикрепленная картинка) Test_WPP.zip Core_generator.zip
  10. ФАПЧ подстраивается с коэффициентами на 3-4 порядка больше рассчитанных. Расчет по скрипту из рекомендованной Вами книги стр 264: Частота дискретизации 30.72 МГц. Разрядность NCO 32 бит Несущая 100 КГц Модулирующий сигнал 16 КГц. Где ошибка в расчетах ? disp(['View file information for <a href="matlab: mfileinfo(''',mfilename,''')">',mfilename,'</a>']); % set primary parameters %--------------------------- fs = 30720000; % sampling rate T = 1/fs; % sample period fq = 100000; % expected (quiescent) frequency d = 0.707; % damping ratio Kp = 0.5; % phase detector gain (multiplier) %Ko = 1; % oscillator gain M = 32; % Разрядность фазового аккумулятора DDS fres = fs/(2^M); % Разрешение по частоте DDS (Гц) Ko = fres*2*pi; % Коэфф. усиления DDS (рад/сек * разряд) Bn = 10; % noise bandwidth % calculate secondary parameters %----------------------------------- mu_q = (2*pi*fq)/fs; % quiescent step size for NCO eta = (Bn*T)/(d+(1/d)); % a repeated section of the equations below K1 = (4*d*eta)/(Ko*Kp*(1+(2*d*eta)+eta^2)); % Loop filter prop coeff. K2 = (4*eta^2)/(Ko*Kp*(1+(2*d*eta)+eta^2)); % Loop filter integral coeff. % for simulation purposes... %----------------------------------- n = 50000; % number of samples in simulation ferr = 4500; % frequency error of input sine (in Hz) awgn = 0.05; % variance of AWGN fprintf('Коэфф. усиления DDS %d\n', Ko); fprintf('Пропорц. коэфф Kp %d\n', K1); fprintf('Интегр. коэфф Ki %d\n', K2); Коэфф. усиления DDS == 4.494084e-02 Пропорц. коэфф Kp == 1.931162e-05 Интегр. коэфф Ki == 4.191312e-12 pll_model_v2_2017.slx
  11. Не гуглится ? https://gist.github.com/marcan/858c242db2fc595da1e0bb70a05192fc https://web.media.mit.edu/~bandy/invariant/move_lens.pdf https://www.google.com/search?ei=FSj8X5aBDYO43AOi7pTACQ&q=camera+lens+control+protocol&oq=camera+lens+control+protocol&gs_lcp=CgZwc3ktYWIQAzoFCCEQoAE6BwguEEMQkwI6BAgAEEM6CAgAELEDEIMBOgUIABCxAzoLCAAQsQMQxwEQowI6BwgAELEDEEM6BQguELEDOgQILhBDOgIIADoECAAQCjoGCAAQChAeOgQIABAeOgYIABAWEB46CAgAEBYQChAeOggIABANEAoQHjoFCAAQzQI6BAgAEBM6CAgAEBYQHhATOgkIIRAKEKABECo6CAghEBYQHRAeUJmTBlip-Qhg7fsIaAJwAHgAgAHgAYgB7ieSAQYwLjIxLjeYAQCgAQGgAQKqAQdnd3Mtd2l6wAEB&sclient=psy-ab&ved=0ahUKEwjW3_bU1ZPuAhUDHHcKHSI3BZgQ4dUDCAw&uact=5
  12. В Simulink не стоит по- экспериментировать с помехозащищенным кодированием ? https://www.ijltet.org/wp-content/uploads/2014/07/10.pdf https://uk.mathworks.com/help/comm/ug/transmit-and-receive-shortened-reed-solomon-codes.html https://fr.mathworks.com/matlabcentral/fileexchange/32127-reed-solomon-coding-_16-psk-using-simulink N = 63; % Codeword length K = 51; % Message length S = 39; % Shortened message length M = 64; % Modulation order numErrors = 200; numBits = 1e7; ebnoVec = (8:13)'; [ber0,ber1] = deal(zeros(size(ebnoVec))); errorRate = comm.ErrorRate; rsEncoder = comm.RSEncoder(N,K,'BitInput',true); rsDecoder = comm.RSDecoder(N,K,'BitInput',true); rate = K/N; for k = 1:length(ebnoVec) % Convert the coded Eb/No to an SNR. Initialize the error statistics % vector. snrdB = ebnoVec(k) + 10*log10(rate) + 10*log10(log2(M)); errorStats = zeros(3,1); while errorStats(2) < numErrors && errorStats(3) < numBits % Generate binary data. txData = randi([0 1],K*log2(M),1); % Encode the data. encData = rsEncoder(txData); % Apply 64-QAM modulation. txSig = qammod(encData,M, ... 'UnitAveragePower',true,'InputType','bit'); % Pass the signal through an AWGN channel. rxSig = awgn(txSig,snrdB); % Demodulated the noisy signal. demodSig = qamdemod(rxSig,M, ... 'UnitAveragePower',true,'OutputType','bit'); % Decode the data. rxData = rsDecoder(demodSig); % Compute the error statistics. errorStats = errorRate(txData,rxData); end % Save the BER data, and reset the errorRate counter. ber0(k) = errorStats(1); reset(errorRate) end gp = rsgenpoly(N,K,[],0); rsEncoder = comm.RSEncoder(N,K,gp,S,'BitInput',true); rsDecoder = comm.RSDecoder(N,K,gp,S,'BitInput',true); rate = S/(N-(K-S)); for k = 1:length(ebnoVec) % Convert the coded Eb/No to an SNR. Initialize the error statistics % vector. snrdB = ebnoVec(k) + 10*log10(rate) + 10*log10(log2(M)); errorStats = zeros(3,1); while errorStats(2) < numErrors && errorStats(3) < numBits % Generate binary data. txData = randi([0 1],S*log2(M),1); % Encode the data. encData = rsEncoder(txData); % Apply 64-QAM modulation. txSig = qammod(encData,M, ... 'UnitAveragePower',true,'InputType','bit'); % Pass the signal through an AWGN channel. rxSig = awgn(txSig,snrdB); % Demodulated the noisy signal. demodSig = qamdemod(rxSig,M, ... 'UnitAveragePower',true,'OutputType','bit'); % Decode the data. rxData = rsDecoder(demodSig); % Compute the error statistics. errorStats = errorRate(txData,rxData); end % Save the BER data, and reset the errorRate counter. ber1(k) = errorStats(1); reset(errorRate) end berapprox = bercoding(ebnoVec,'RS','hard',N,K,'qam',64); semilogy(ebnoVec,ber0,'o-',ebnoVec,ber1,'c^-',ebnoVec,berapprox,'k--') legend('RS(63,51)','RS(51,39)','Theory') xlabel('Eb/No (dB)') ylabel('Bit Error Rate') grid psk_16_awgn_rs_simulink_2018.slx
  13. `include "timescale.v" /*===========================================================*/ module mean_filter( input clk_i, /* 30.72MHz */ input rst_i, input signed [21:0] dat_i, input srst_i, input valid_i, output signed [21:0] dat_o ); /*===========================================================*/ reg [3:0] addr_wr; reg [3:0] addr_rd; reg signed [25:0] S; wire signed [25:0] S0; wire signed [21:0] dat_m; reg init_done; /*===========================================================*/ assign dat_o= S[25:4]; assign S0= S- dat_m; mem_x22 mem (.clk(clk_i), .a(addr_wr), .d(dat_i), .dpra(addr_rd), .we(valid_i), .qdpo(dat_m)); /*===========================================================*/ always @(posedge clk_i or posedge rst_i) begin if(rst_i) S<= 0; else begin if(srst_i) S<= 0; else begin if(valid_i) begin if(init_done) S<= S0 + dat_i; else S<= S+ dat_i; end end end end /*===========================================================*/ always @(posedge clk_i or posedge rst_i) begin if(rst_i) {addr_wr, addr_rd, init_done}<= 0; else begin if(srst_i) {addr_wr, addr_rd, init_done}<= 0; else begin if(&addr_wr) init_done<= 1'b1; if(valid_i) begin addr_rd<= addr_wr+ 2'd2; addr_wr<= addr_wr+ 1'b1; end end end end /*===========================================================*/ endmodule Если с двух- портовой RAM, так оптимально ?
  14. На на Active_HDL моделирую, патаму что простой для лохов. Библиотеки IP и аппаратные компоненты для Xilinx/Altera из с сайта Aldec скачал, поставил. Удобно. Моделирует Mixed: vhdl/verilog/ sv design ok. Проблем пока не было.